
İlişkisel Veritabanları
İçindekiler
Neredeyse tüm modern veritabanı yönetim sistemleri, ilişkisel veritabanı yönetim modelini kullanarak bilgi saklar ve işler. İlişkisel terimi, veritabanındaki her kaydın bir tek konu hakkında ve yalnızca o konuyla ilişkili bilgileri içerdiği gerçeğinden ortaya çıkar. İlişkisel veritabanı yönetim modelini incelerseniz, ilişki teriminin yalnızca bir konuyla ilgili bir satır kümesine uygulandığını göreceksiniz. Ayrıca iki sınıf bilgiyle ilgili veriler (müşteriler ve siparişler gibi), ilişkili veri değerlerine bağlı bir bütün olarak yönetilebilir. Örneğin, müşterinin her verdiği siparişle birlikte müşteri ad ve adres bilgilerini saklamak gereksiz olur. Bir ilişkisel veritabanı sisteminde siparişlerle ilgili bilgiler, her siparişi uygun müşteri bilgisine bağlayacak, müşteri nosu gibi, veri saklayan bir alan vardır.
İlişkisel veritabanı yönetim sisteminde (Relational Database Management System-RDBMS), sistem tüm verileri tablolar içerisinde yönetir. Tablolar bir konuyla ilgili bilgileri (müşteri ve ürünler gibi) saklar. Bununla birlikte, konuyla ilgili başka bilgiler (örneğin müşterilerin adresleri ya da kitap başlıkları) içeren sütunlar ve konunun tek bir örneğinin tüm öz niteliklerini açıklayan (örneğin, belirli bir müşteri ya da kitap hakkındaki veriler) satırlar vardır. Veritabanını sorguladığımızda (bir ya da daha fazla tablodan bilgi getirtmek) bile, sonuç her zaman başka bir tabloya benzeyen bir şey olur.
Ayrıca, birden çok tablo ya da sorgudan alınan ilişkili değerleri birleştirebilirsiniz. Örneğin, hangi yazarların, hangi kitapları yazdığını öğrenmek için, yazar ve kitap bilgilerini birleştirebilirsiniz. Hangi satış elemanının prim hak ettiğini bulmak için, çalışan ve sözleşme bilgilerini birleştirebilirsiniz.
İlişkisel veritabanı yönetim sistemi veritabanlarının yapısını düzenler. Bu özellik sayesinde şu işlemleri yapmak olasıdır:
• Verilerin doğru ve etkin biçimde saklanmasını sağlar.
• İlişkisel bütünlük kuralı (database integrity) sağlanır.
• Değişiklik kayıtları sayesinde, sistem çöktüğünde verileri kurtarmayı sağlar.
İlişkisel veritabanı modelinin amacı, yüksek verimliliktir. Örneğin personel bilgilerini bir veritabanında tuttuğumuzda varsayalım. Personel adı, adresi, telefonu bilgileri personelin çalıştığı farklı bölümler için çoğaltılacaktır. Bu gereksiz fazlalık, önemli sayıda kayıtla uğraşan veritabanları sözkonusu olduğunda hem artan disk boşluğu ihtiyacı, hem de artan veri ulaşım zamanı sorunlarına yol açar.
İlişkisel modelde ise veri iki tabloya ayrılacaktır. Birinci tablo sigorta no, kimlik no, adres, telefon, yaş gibi kişisel bilgiler içerir. İkinci tablo ise bu bilgileri çoğaltmak yerine personelin çalıştığı bölüm bilgilerini içerir.