Harun Reşit Zafer

bâki kalan bu kubbede bir hoş sadâ imiş

Etiket: sql (sayfa 1 / 4)

C# ile Firebird Veritabanına Bağlanmak

Bir proje dolayısıyla hayatımda ilk defa Firebird veritabanı kullanmam gerekti. Firebird’ü duymuştum ve artık pek de kullanılmayan eski bir veritabanı sistemi olduğu sanıyordum. Ancak sandığımdan çok daha yaygın kullanıldığını öğrendim. Üstelik yalnızca Windows üzerinde çalıştığına neredeyse emindim 🙂 Ancak OSX ve Linux üzerinde de çalışıyormuş. Borland 2000 yılında Interbase 6.0 adlı veritabanını açık kaynak hale getirince bu kodlar kullanılarak Firebird projesi başlatılmış. Kısacası açık kaynak ve ücretsiz olduğunu da belirtelim ve Firebird tanıtımını bitirelim.

C# ile Firebird kullanımı konusundaki kaynak miktarının sınırlı olduğunu söyleyebilirim. Ben de en azından bağlanma ve basit bir SELECT sorgusu ile veri çekme işlemlerinin nasıl yapıldığını Türkçe olarak paylaşmak istedim. okumaya devam

SQL 18: Join Türleri

Önceki iki yazıda SQL’deki temel join sorguları üzerinde durmuştuk. O yazılarda anlatılan join’in en çok kullanılan türü olan inner join’di. Bu yazıda ise genel olarak inner, outer, left, right, full gibi join türlerinin benzer ve farklı yönlerini örneklerle açıklamaya çalışacağım. Eğer join konusuna tamamen yeni iseniz öncelikle ilk iki makaleyi çalışmanızı öneririm.

Bildiğiniz gibi üzerinde çalıştığımız veritabanları için kullanılan genel isim “ilişkisel veritabanı”dır. Yani tablolar birbiri ile ilişkilidir ve bu ilişki bir tablodaki birincil anahtar (primary key) ile diğer tablodaki yabancı anahtar (foreign key) üzerinden kurulur. Aşağıdaki okul veritabanında bu tablolar arasındaki ilişkiler açıkça görülüyor. okumaya devam

SQL 17: Örnek Okul Veritabanı

Güncelleme: Yazının önceki versiyonu “örnek kitap veritabanı şeklindeydi” ancak okul veritabanı her öğrencinin aşina olduğu bir yapı olmasının yanı sıra daha çeşitli sorgu örneklerine imkan veriyor. Bu yüzden yazı ve veritabanı “okul veritabanı” olarak güncellendi.

Bundan sonraki SQL derslerinde üzerinde çeşitli sorgular çalıştırabileceğimiz, sade, anlaşılır ve yeterince veri içeren bir veritabanına ihtiyacımız olacak. Okul veritabanını temelde bu amaçla hazırladım. Ayrıca Java ve PHP ile ileride yapacağım örnek veritabanı uygulamalarında da aynı veritabanını kullanmayı düşünüyorum. Sonuç olarak eğitim amaçlı ideal bir veritabanı oldu. Okul veritabanının bu ilk versiyonu 6 tablodan oluşuyor. Tabloların açıklamaları ve ilişkileri aşağıdaki gibidir. okumaya devam

SQL 16: HAVING İfadesi

Schema SQL Son iki yazımda SQL kümeleme fonksiyonlarını ve GROUP BY ifadesini anlatmıştım. HAVING ifadesi bu iki yazıda anlatılanların devamı, çünkü sadece GROUP BY ifadesi ile birlikte kullanılan bir ifade. Aslında HAVING ifadesinin işlevi WHERE ifadesininkine çok benziyor. Ancak kümeleme fonksiyonları ile WHERE ifadesi birlikte kullanılamadığından HAVING ifadesine ihtiyaç duyulmuştur. Meseleyi daha iyi izah edebilmek için hemen örneklere geçelim. okumaya devam

SQL 15: GROUP BY İfadesi

Schema SQL
Bir önceki makalede SQL kümeleme fonksiyonlarını anlatmıştık. Çünkü kümeleme fonksiyonları genelde GROUP BY ifadesi ile birlikte kullanılır. Adından da anlaşılacağı üzere GROUP BY ifadesi gruplama yapar. Yani sonuç kümesini bir veya birden fazla kolona göre gruplar. Öncelikle bir önceki makalede de kullandığımız aşağıdaki kisiler tablosunu inceleyelim. Sonra bu tablo üzerinde biraz gruplama yapacağız. okumaya devam

SQL 14: Kümeleme Fonksiyonları

Schema SQL
Programlama dillerinde olduğu gibi SQL’de de bir çok yerleşik (built-in) fonksiyon mevcuttur. Bunlar temel olarak kümeleme (aggregate) fonksiyonları ve skalar (scalar – iyi bir önerisi olan?) fonksiyonlar diye ikiye ayrılır. Bu yazıda en çok kullanılan kümeleme fonksiyonlarını ele alacağız. Yine sık kullanılan skalar fonksiyonlar ise bir başka makalenin konusu olacak.

Kümeleme fonksiyonları tablodaki bir kolon (alan) üzerindeki değerler için belli matematiksel hesaplamalar yapar ve sonuç döndürürler. Örneğin AVG (average-ortalama) fonksiyonu bir kolondaki tüm değerlerin ortalamasını hesaplamamıza yardımcı olur. okumaya devam

Eski yazılar

© 2017 Harun Reşit Zafer

Temayı tasarlayanAnders NorenYukarı ↑