Konular

EBooklar

1 e 1, 1 e n, n e n

Veritabanlarında ilişki türleri

Veritabanlarında ilişki türleri 3 tanedir:
1-Bire bir ilişki
2-Birden çoğa ilişki
3-Çoktan çoğa ilişki


1-Birebir İlişki Türü

Herkesin kendine ait bir tek TCKimlik numarası olması gibidir. Ne bir kişinin birden fazla kimlik numarası olabilir ne de bir kimlik numarası birden fazla kişinin olabilir. Teknik bir dilde, tablodaki anahtar ilişkili tabloda sadece bir tane olur. Birebir ilişki türü bu tarz örneklerde kullanılır.

Örneğin, herhangi bir veritabanından birisini ve onun kimlik numarasını seçecek olursak:
SELECT * FROM uyeler, tcknolari WHERE uyeler.uye_kimlik_no = tcknolari.tcknosu
şeklinde olur. Böylece kayıtlı bir üye ve onun TC Kimlik numarası çağırılmış olur.

2- Birden çoğa İlişki Türü

Bir sanatçının birden fazla eserinin olması örnek olarak gösterilebilir. Yani bir birincil anahtar söz konusu olmaz bu ilişki türünde.

Yine bir veritabanından sanatçı ve sanat eserini seçecek olursak olursak:
SELECT * FROM sanatcilar, eserler WHERE sanatcilar.sanatciadi = eserler.eseradi
şeklinde olur ve istediğimiz bilgi gösterilir.

3- Çoktan çoğa İlişki Türü

Bir tablodaki anahtar ilişkili olduğu tabloda birden çok kez olabilirken karşıtı da doğrudur. Bu yüzden istenilen ilişkiselliği sağlamak için ilişkiyi birden çoğa indirgemek gerekir.

Bir öğrencinin birden fazla ödevi olabilirken bir ödevi yapan birden fazla öğrencinin olabileceği gibi.

Bunu sağlamak için de iki tane sql sorgusu oluşturmak gerekecektir. Öğrencinin hazırladığı ödevler ve ödevi hazırlayan öğrenciler...
Bu iki sorgu:
a.) SELECT * FROM ogrenciler, odevler, odev_ogrenci WHERE odev_ogrenci.ogrenci_Id = ogrenciler.ogrenci_Id AND ogrenciler.ogrenci_Id=1
b.) SELECT * FROM ogrenciler, odevler, odev_ogrenci where odev_ogrenci.odev_Id = odevler.odev_Id and odevler.odev_Id=1

(a. birinci sıradaki öğrencinin yaptığı ödevleri gösterir; b. ise birinci ödevi yapan öğrencileri gösterir)

Veritabanlarındaki 3 ilişki türü ve bunların kullanımları bu şekildedir.


Kaynak:


Efe ORHAN

Yorumunuzu Ekleyin


  • Veritabanı Nedir?
  • Veritabanı Nedir? ~ 91,325

    Veritabanı basit olarak bilgi depolayan bir yazılımdır. Bir çok yazılım bilgi depolayabilir ama aradaki fark, veritabanın bu bilgiyi verimli ve hizli bir şekilde yönetip degiştirebilmesidir. Veritabanı, bilgi sisteminin kalbidir ve etkili kullanmakla değe...


  • Sql Komutları
  • Sql Komutları ~ 88,379

    Sql komutlarından DISTINCT, IN, NOT IN, IN(SELECT...), ANY, ALL, EXISTS, NOT EXISTS, UNION, EXCEPT, BETWEEN kullanımı












  • Join İşlemleri
  • Join İşlemleri ~ 28,072

    İlişkisel veritabanının en temelinde birden fazla tablo üstünde birlikte işlem yapabilmek yatar. Bu sayede verilerin tekrarlaması önlenmiş olur ve sonuçta veri yönetimi kolaylaşır.


  • View Oluşturma ~ 26,626

    Sql komutlarından view oluşturma ve faydaları, myadminde gösterimi









  • Sql Komutları ~ 19,153

    Dıstınct, ın, not ın, ınselect..., any, all, exısts, not exısts, unıon, except, between









  • Joinler
  • Joinler ~ 16,036

    Joinler, inner join, left join, right join