Yazan : Şadi Evren ŞEKER
Unsurlar (Entities) arasındaki sayısal bağlantıyı ifade etmek için kullanılan bir terimdir. Literatürde bazı kaynaklarda sayılabilirlik olarak da geçmektedir. Buna göre bir unsur ile diğer unsur arasında aşağıdaki üç ilişki şeklinden birisi olmalıdır:
- Birebir one-to-one
- Bire çok one-to-many
- Çoka çok many-to-many
Bu durumlara birer misal verecek olursak:
- Bir çalışanın cep telefonu numarası ile TC kimlik no arasında birebir ilişki vardır. Yani her farklı TC kimlik no için farklı bir cep telefonu numarası söz konusudur. Bu ilişki tipi bire bir ilişkidir.
- Bir çalışan ile, çalıştığı kısım arasında bire çok ilişki vardır. Yani bir kısımda (department) birden çok çalışan çalışırken, her çalışan sadece bir kısma bağlıdır. Bu ilişki tipi de bire çok ilişkiye örnektir.
- Bir öğrenci unsuru (entity) ile hoca unsuru (entity) arasında ise çoka çok ilişki tipi vardır. Çünkü bir öğrencinin birden fazla hocası olabilirken bir hocanın da birden fazla öğrencisi bulunur.
Yukarıdaki bu ikişki tiplerinin hepsinin veritabanı teorisi için anlamları çok büyüktür. İlişki türlerine göre kabaca aşağıdaki yorulmar yapılabilir. (Bunlar genel yorumlar olup istisnaları bulunmaktadır, buradaki amaç okuyucuya fikir vermektir)
Şayet iki unsur (entity) arasında birebir ilişki varsa bu iki unsurun aslında ayrılmalarına gerek yoktur. Çok büyük ihtimalle bir unsurun iki farklı parçalarıdır ve tek bir çatı altında birleştirilmesi veritabanı teorisi açısından daha doğrudur.
Şayet iki unsur arasında çoka çok ilişki tipi varsa o halde bu ilişki tipi bire çok tipinden iki ilişkiye indirgenmelidir.
Sonuç olarak veritabanında sadece teke çok ilişki tipi elde etmek isteriz bunun sebebi yukarıda da anlatıldığı üzere birebir ilişki tipinin gereksiz oluşu ve çoka çok ilişki tipinin hem performans hemde hafıza olarak sistemde sorun çıkartmasıdır. Bu indirgeme konularını Normal Forms ve Composition konuları altında okuyabilirsiniz.
ERD çizimleri açısından olaya bakıldığında sayısallık ( cardinality ) kaz ayağı veya birim olarak ifade edilir. Aşağıda bir örnek üzerinde bu durum gösterilmiştir:
Yukarıda iki unsur arasındaki ilişkinin (relation) sayısallığı gösterilmiştir. Buna göre bir çalışanın bir tane kısmı olabilirken bir kısımda birden çok çalışan bulunabilmektedir. Dolayısıyla ilişkinin çalışana bakan tarafı çok, kısma bakan tarafı ise tek olarak gösterilmiştir. Bu gösterimde çok olan taraf kaz ayağı, tek olan taraf ise bir çizgi ile ifade edilmektedir.
Yukarıdaki bu ilişki tipi bire çok ilişki tipine bir örnektir. Çoka çok olması durumunda iki tarafta da kaz ayağı olurken, teke tek olması durumunda iki tarafta da çizgi ile gösterilmektedir.