Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

VERİ TABANI YÖNETİMİ Ders 4: Varlık-İlişki Çizelgelerinin İlişkisel Veri Tabanına Dönüştürülmesi Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar.

Benzer bir sunumlar


... konulu sunumlar: "VERİ TABANI YÖNETİMİ Ders 4: Varlık-İlişki Çizelgelerinin İlişkisel Veri Tabanına Dönüştürülmesi Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar."— Sunum transkripti:

1 VERİ TABANI YÖNETİMİ Ders 4: Varlık-İlişki Çizelgelerinin İlişkisel Veri Tabanına Dönüştürülmesi Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği

2 E-R Çizelgelerini İVTYS’ye Dönüştürme Varlık-ilişki modeli kullanılarak veri modelleme yapıldıktan sonra, eğer veri tabanını gerçekleştirmek için ilişkisel bir VTYS kullanılacaksa, oluşturulan varlık-ilişki çizelgesinin tablolara (ilişki şemalarına) dönüştürülmesi gerekir. Bu amaçla varlık-ilişki modelindeki her farklı kavramın (varlık kümesi, nitelik, ilişki kümesi, ilişki kümesinin tanımlayıcı niteliği, güçlü ve zayıf varlık kümeleri, var olma bağımlılığı, genelleme, kümeleme,..vb) ilişkisel modelde nasıl gösterileceğinin bilinmesi gerekir.

3 Varlık Kümelerinin Dönüştürülmesi Varlık-ilişki modelindeki her varlık kümesi için ilişkisel modelde bir tablo oluşturulur. İlişkinin nitelikleri olarak da varlık kümesinin nitelikleri kullanılır.

4 Örnek Daha önce verilmiş bir örnek olan, ÖĞRENCİ ve DERS varlık kümelerine karşılık, ilişkisel modelde aşağıdaki tablolar oluşturulur. – ÖĞRENCİ (ÖĞRNO, ADI, SOYADI, CİNSİYETİ, DOĞTAR) – DERS (DKODU, DERSADI, KREDİSİ) ÖĞRENCİ ADI SOYADI CİNSİYETi ÖĞRNODOĞTAR DERS DERSADI DKODU KREDİSİ

5 Zayıf Varlık Kümelerinin Dönüştürülmesi Eğer varlık kümesi en az bir anahtarı bulunan güçlü bir varlık kümesi ise, tablo alanları olarak varlık kümesinin niteliklerinin kullanılması yeterlidir. Eğer varlık kümesi anahtarı olmayan zayıf bir varlık kümesi ise (niteliklerin hepsi birlikte alındığında bile bir anahtar oluşturmuyorsa), tablo alanları olarak zayıf varlık kümesinin niteliklerinin kullanılması yeterli değildir.

6 Zayıf Varlık Kümelerinin Dönüştürülmesi Bu nedenle zayıf bir varlık kümesine karşı gelen tablo oluşturulurken, ilişki nitelikleri olarak zayıf varlık kümesinin niteliklerine ek olarak, bu varlık kümesinin var olma bağımlı olduğu güçlü varlık kümesinin anahtarında yer alan niteliklerde kullanılır.

7 Örnek Daha önce verdiğimiz yukarıdaki çizimdeki güçlü LİSE varlık kümesi ile zayıf ÖĞRENCİ varlık kümelerine karşılık, ilişkisel modelde aşağıdaki tablolar oluşturulur: – LİSE (LİSENO, LİSEADI, KENT) – ÖĞRENCİ (LİSENO, ÖĞRNO, ADI, SOYADI) ÖĞRENCİ ADI SOYADI ÖĞRNO LİSE LİSEADI LİSENO KENT OKUDUĞU

8 İlişki Kümelerinin Dönüştürülmesi Varlık-ilişki modelindeki her ilişki kümesi için ilişkisel modelde bir tablo oluşturulmasına gerek yoktur. Sadece çoğa-çok ilişki türü için bir ara-tablo kullanmak gereklidir. Eğer ilişki türü birden-çoğa yada birden-bire ise varlık kümesi için oluşturulan tablolardan birine, diğer varlık kümesinin anahtarında yer alan nitelikleri eklemek yeterlidir.

9 İkili Çoktan-Çoğa İlişki Kümelerinin Dönüştürülmesi Eğer bir ikili ilişki kümesinin türü çoktan-çoğa (ilişki hiçbir yönde işlevsel değil) ise ilişkisel modelde bu ilişki kümesi için ayrı bir şema oluşturulur. İlişki kümesine karşılık gelen ilişki tabloda, her iki varlık kümesinin anahtarları ile, varsa ilişki tanımlayıcı niteliklerine yer verilir.

10 Örnek Örneğin SATTIĞI ilişkisi ilişkisel modelde aşağıda şeması verilen ilişki ile gösterilir. SATTIĞI (MAĞNO, ÜRÜNKODU, MİKTAR) MAĞAZAÜRÜN SATTIĞI MAĞNOMAĞADIÜRÜNKODUÜRÜNADI MİKTAR mn

11 İkiden Büyük Dereceli İlişki Kümelerinin Dönüştürülmesi Eğer bir ilişki kümesi ikiden çok varlık kümesi arasında kurulmuşsa, ilişkinin diğer özellikleri (eşleme sınırlamaları, ilişkinin tanımlayıcı niteliklerinin bulunup bulunmaması,..vb.) ne olursa olsun, ilişkisel modelde bu ilişki kümesine karşılık ayrı bir tablo oluşturulur. Oluşturulan tabloda, aralarında ilişki kurulan tüm varlık kümelerinin anahtarlarına ek olarak, varsa ilişkinin tanımlayıcı niteliklerine yer verilir. Bu varlık kümelerinden biri ya da birkaçı zayıf varlık kümesi ise, bu varlık kümelerinin anahtarlarını bulmak için ilgili yöntem kullanılır.

12 Örnek KONSER, ESER ve MÜZİSYEN varlık kümeleri arasındaki KATILIM adlı üçlü ilişki kümesini düşünelim. KONSER TARİH SALON GÖREVİ KONSNO MZSNO ESER ESTÜRÜ ESNO BESTECİ KATILIM MÜZİSYEN SOYADI ESADI ADI

13 Örnek Bu ilişki kümesi hangi konserde, hangi eser çalınırken orkestrada hangi müzisyenlerin yer aldığını ve görevlerinin ne olduğunu göstermektedir. KONSER TARİH SALON GÖREVİ KONSNO MZSNO ESER ESTÜRÜ ESNO BESTECİ KATILIM MÜZİSYEN SOYADI ESADI ADI

14 Örnek KONSER(KONSNO, TARİH, SALON) ESER(ESNO, ESADI, ESTÜRÜ, BESTECİ) MÜZİSYEN(MZSNO, ADI, SOYADI) KONSER TARİH SALON GÖREVİ KONSNO MZSNO ESER ESTÜRÜ ESNO BESTECİ KATILIM MÜZİSYEN SOYADI ESADI ADI

15 Örnek Üçlü KATILIM ilişkisi için, ilişkisel modelde aşağıdaki tablo oluşturulur: KATILIM (KONSNO, ESNO, MZSNO, GÖREVİ) Eğer varlık kümeleri arasındaki ikili eşlemelerin (konser-eser, konser-müzisyen ve eser-müzisyen) her üçü de çoktan-çoğa ise KATILIM ilişkisinin anahtarı, yukarıdaki tabloda görüldüğü gibi üç varlık kümesinin anahtarlarının birleşiminden oluşur.

16 İkili Birden-Çoğa İlişki Kümelerinin Dönüştürülmesi Eğer bir ikili ilişki kümesinin türü birden-çoğa ya da çoktan-bire (ilişki bir yönde işlevsel) ise ilişkisel modelde bu ilişki kümesi için ayrı bir şema oluşturmaya gerek yoktur. Örneğin BÖLÜM ve PERSONEL varlık kümeleri arasındaki ÇALIŞAN ilişkisini düşünelim.

17 Örnek Eğer her personel yalnız bir bölümde çalışıyorsa, bu ilişkinin türü BÖLÜM'den PERSONEL'e birden-çoğadır. Yani ilişki PERSONEL'den BÖLÜM'e işlevseldir. Bu varlık-ilişki çizelgesi ilişkisel modele dönüştürülürken BÖLÜM ve PERSONEL varlık kümelerine karşı gelen ve anahtarları sırasıyla BNO ve PNO olan iki şema oluşturulur.

18 Örnek Eğer ÇALIŞAN ilişki kümesi için ayrı bir şema oluşturulursa, bu şema, anahtarı PNO olan ve çalışan her personel için yalnız bir satırı olan bir şema olacaktır. Oysa anahtarı PNO olan ve kurumdaki her personel için yalnız bir satır içeren PERSONEL şeması zaten vardır. Dolayısıyla ÇALIŞAN ilişki kümesini göstermek için ayrı bir ilişki oluşturmaya gerek yoktur.

19 Örnek Bu ilişki kümesini göstermek için PERSONEL ilişkisine BÖLÜM varlık kümesinin anahtarı olan BNO ile ilişkinin tanımlayıcı nitelikleri olan GÖREVİ ve GBAŞTAR eklenir. Bu durumda, yukarıdaki çizimdeki PERSONEL ve BÖLÜM varlık kümeleri ile aralarındaki ÇALIŞAN ilişkisine karşılık, ilişkisel modelde iki şema oluşturulur.

20 Örnek BÖLÜM (BNO, BADI) PERSONEL (PNO, ADI, SOYADI, DOĞTAR, BNO, GÖREVİ, GBAŞTAR) Yukarıdaki tablolardan ilki varlık-ilişki çizeneğindeki BÖLÜM varlık kümesine, ikincisi ise hem PERSONEL varlık kümesine hem de ÇALIŞAN ilişkisine karşılık gelmektedir.

21 İkili Birden-Bire İlişki Kümelerinin Dönüştürülmesi Eğer bir ikili ilişki kümesinin türü birden-bire (ilişki her iki yönde de işlevsel) ise ilişkisel modelde bu ilişki kümesini göstermek için de ayrı bir şema oluşturmaya gerek yoktur. Örneğin BÖLÜM ve PERSONEL varlık kümeleri arasındaki BBAŞKANI (bölüm başkanı) ilişkisini düşünelim.

22 Örnek Eğer her bölümün bir başkanı olabiliyorsa; bir personel de en çok bir bölümün başkanı olabiliyorsa, her iki yönde de işlevsel olan bu ilişkinin türü bire-birdir.

23 Örnek Bire-bir varlık kümelerini ilişkisel modelde göstermek için, varlık kümelerinden birinin anahtarını, varsa ilişkinin tanımlayıcı nitelikleri ile birlikte, diğer varlık kümesine karşı gelen şemaya eklemek yeterlidir. Bunun için de olası iki seçenekten biri seçilir. İlişkilerin anlamlarına ve kullanım ortamına göre bu seçeneklerden biri daha uygun olabilir.

24 Örnek 1. seçenek: – BÖLÜM (BNO, BADI) – PERSONEL (PNO, ADI, SOYADI, DOĞTAR, YBNO, GBAŞTAR) Burada YBNO personelin (bölüm başkanının) yönettiği bölümün numarasıdır.

25 Örnek 2. seçenek: – BÖLÜM (BNO, BADI, BBPNO, GBAŞTAR) – PERSONEL (PNO, ADI, SOYADI, DOĞTAR) Burada BBPNO bölüm başkanı personel numarasıdır. (Bu örnek için bu seçenek daha uygun bir çözüm olarak görülmektedir.)

26 Aynı Varlık Kümesi İçindeki İlişki Kümeleri Eğer ilişki kümesi iki farklı varlık kümesi arasında tanımlanmak yerine, aynı varlık kümesi içinde tanımlanmışsa, bu varlık kümesinin ilişkisel modele dönüştürülmesinde hiçbir farklılık yoktur. İlişki kümesinin türünün birden-bire, birden- çoğa ya da çoktan-çoğa olmasına göre yukarıda söylenenlerin tümü geçerlidir.

27 Aynı Varlık Kümesi İçindeki İlişki Kümeleri Ancak aralarında ilişki kurulan varlık kümeleri aynı olduğu için, bir tabloda aynı niteliğin farklı rollerde yer alması söz konusu olabilir. Bunun için de, roller de düşünülerek niteliklere uygun adlar seçilmesi gerekir.

28 Örnek PERSONEL varlık kümesi ve bu varlık kümesi içindeki birden-çoğa YÖNETİCİ ilişkisi ilişkisel modelde tek bir şema ile gösterilebilir. PERSONEL(SİCİLNO, ADI, BÖLÜMÜ, GÖREVİ, GBAŞTAR, YSİCİLNO) PERSONEL YÖNETİCİ GBAŞTAR ADI BÖLÜMÜ GÖREVİ SİCİLNO üst ast 1 n

29 Örnek Soru Bir sanal alışveriş sitesi için geliştirilen veri tabanında ürünler, kategoriler, tedarikçi firmalar, müşteriler ve siparişler varlık kümelerini, bu kümeler arasındaki ilişki kümelerini (ilişki türlerini de belirterek) ve size göre bu kümelerin sahip olması gerekli nitelikleri de gösterecek şekilde varlık-ilişki modeli çizelgesini oluşturunuz.

30 Sorunun Cevabı ÜRÜN Satış Fiyat Alış Fiyat Ürün ID KATEGORİ Kategori ID Kategori Adı AİT OLDUĞU KDV Oranı Ürün Adı FİRMA Adres Firma ID Firma Adı Telefon TEDARİK EDEN SİPARİŞ MÜŞTERİ Müşteri ID Soyad Ad Adres Telefon 1 n 1 n YER ALDIĞI VERDİĞİ n n n 1 Tarih Adet Sipariş ID

31 İlişkisel Veri Modeli Gösterimi ÜRÜNLER(Ürün ID, Ürün Adı, Alış Fiyatı, Satış Fiyatı, Kategori ID, Firma ID) KATEGORİLER(Kategori ID, Kategori Adı, KDV Oranı) FİRMALAR(Firma ID, Firma Adı, Telefon, Adres) MÜŞTERİLER(Müşteri ID, Adı, Soyadı, Adresi, Telefonu) SİPARİŞLER(Sipariş ID, Müşteri ID, Tarih) SİPARİŞ_DETAY(Sipariş ID, Ürün ID, Adet)

32 İlişkilerin Tablolar ile Gösterimi


"VERİ TABANI YÖNETİMİ Ders 4: Varlık-İlişki Çizelgelerinin İlişkisel Veri Tabanına Dönüştürülmesi Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar." indir ppt

Benzer bir sunumlar


Google Reklamları