hiyerarşik veritabanı modeli

advertisement
VERİTABANI
Veritabanı Modelleri
VERİTABANI MODELLERİ
Tüm veritabanları verilerin saklanmasını sağlamaktadır. Veritabanında
saklanan veriler farklı uygulama veya kullanıcılar tarafından ortak şekilde
kullanılabilmektedir. Kullanılan veriler ile veriler arasındaki ilişkiler, veri
modellerine göre tasarlanmaktadır. Verinin saklanması ve yeniden
kullanılmasını sağlamayı amaçlayan farklı veritabanı modelleri
bulunmaktadır. Günümüzde genel olarak kullanılmakta olan veritabanı
modelleri;
• Hiyerarşik veritabanı modeli
• Ağ veritabanı modeli
• İlişkisel veritabanı modeli
• Nesneye dayalı veritabanı modeli
• Varlık-İlişki modeli
HİYERARŞİK VERİTABANI MODELİ
Hiyerarşik veritabanı modeli veritabanlarında kullanılmaya başlanan en
eski modeldir. Özellikle 1960'lı ve 1970'li yıllarda kullanılmıştır. Hiyeraşik
veritabanı modelinin kullanıldığı en önemli veritabanı yönetim sistemi
yazılımı ise IBM tarafından geliştirilen IMS'tir. Hiyerarşik veritabanı
modelinde veriler ters ağaç şeklinde birbirleriyle hiyrarşik olarak bağlantılı
olacak şekilde düzenlenmektedir. Model bir ağaçta olduğu gibi kök ve
dallardan oluşmaktadır. Her dala birçok dal bağlanabilir. Bu yapı dallanma
ve çeşitliliğin artmasına olanak sağlar. Ancak dalların birbirleriyle tek bir
noktadan
bağlanma
zorunluluğu
bu
modelin
en
büyük
dezavantajlarındandır.
HİYERARŞİK VERİTABANI MODELİ
Hiyerarşik veritabanı modeline bir şirketin idari şeması örnek
gösterilebilir. İdari şema genel müdürden personele kadar biribirleriyle
hiyerarşik bir yapıda bağlantılıdır. Bu şemada "Genel Müdür" kök, "Genel
Müdür Yardımcısı", "Şube Müdürü", "Birim Şefi" ve "Personel" ise bu köke
bağlı dallar şeklindedir.
HİYERARŞİK VERİTABANI MODELİ
Hiyerarşik veritabanı modelinde bulunan segmentlere düğüm adı verilir.
Bu modelde en üstte yer alan düğüm, kök olarak ifade edilir. Kök
kendisinin altında bulunan düğümlerin atasıdır. Kökün altında bulunan
düğümler de kök düğümünün çocuklarıdır. Hiyerarşik modelde her ata çok
sayıda çocuğa sahip olabilir. Ancak her çocuk sadece bir ataya sahiptir.
HİYERARŞİK VERİTABANI MODELİ
Hiyerarşik veritabanlarında veriler ata segmentinden, çocuk segmentlere
doğru bir yol izlenilerek saklanırlar. Örneğin Şekilde H segmentine yol A,
B, D ve H şeklinde tanımlanır. Bu sıralamaya hiyeraşik yol denilmektedir.
Hiyerarşik yol üzerindeki segmentlerin sıralamasına da hiyerarşik sıra
denir.
HİYERARŞİK VERİTABANI MODELİ
Hiyerarşik Veritabanı Modelinin Avantajlar
Hiyerarşik modelde veritabanı geliştirmek ve üzerinde işlem yapmak
kolaydır.
Hiyerarşik yapıya sahip alanlarda kolayca uygulanabilir. Örnek olarak şirket
organizasyon şeması verilebilir.
Hiyerarşik model kullanılan, veritabanı yönetim sistemi yazılımlarında
sorgu dili oldukça basittir.
HİYERARŞİK VERİTABANI MODELİ
Hiyerarşik Veritabanı Modelinin Dezavantajları
Veritabanı yapısında yapılacak herhangi bir değişiklik o yapıya ait tüm alt
segmentleri de etkileyeceğinden dolayı çok fazla riskler içermektedir. Bu
durumun neden olduğu sonuçlar veritabanına bağlı tüm iş süreçlerini
doğrudan etkileyecektir. Bu nedenle hiyerarşik veritabanları tasarlanırken
iyi bir şekilde kurgulanmalıdır. Süreç içerisinde eksikliği fark edilen bir
segmentin daha sonra yapıya entegrasyonu hiyerarşik modelde oldukça
zordur.
Veritabanı uygulama yazılımları gerçekleştiren programcıların veriye
ulaşabilmesi ve üzerinde işlem yapabilmesi için veritabanın yapısı
hakkında çok geniş bilgiye sahip olması gerekmektedir. Çünkü bu
modelde istenilen veriye ulaşmak için hiyerarşik yol izlenmelidir.
HİYERARŞİK VERİTABANI MODELİ
Hiyerarşik Veritabanı Modelinin Dezavantajları
Hiyerarşik yol üzerinde bulunan segmentlerden herhangi birinin veya
birkaçının değişmesi hiyerarşik yolun değişmesine neden olacaktır. Bunun
sonucunda veritabanını kullanan uygulama yazılımlarının da yeniden
tasarlanmasını gerekmektedir.
Hiyerarşik modeli kullanan veritabanı yönetim sistemlerinin kendilerine
özgü standartları vardır. Bunun sonucu olarak veritabanı yapıları, bu
modeli kullanan veritabanı yazılımlarına göre değişiklikler göstermektedir.
Bu durum veritabanı taşınabilirliğini oldukça zor hale getirmektedir.
Hiyerarşik model, yazılımcılar için gerçekleştirilmiş bir sistem olarak
bilinir. Bu modelin kullanımı için geniş programlama bilgisine gereksinim
duyulmaktadır. Bu neden ile son kullanıcıların, hiyerarşik model kullanan
veritabanı yönetim sistemi yazılımlarını kullanımı oldukça zordur.
AĞ VERİTABANI MODELİ
Ağ veritabanı modeli hiyerarşik modelin yetersiz kalması sonucu
geliştirilmiştir. Temelde hiyerarşik veritabanı modeline benzemektedir.
Ancak hiyerarşik modelden farklı olarak segmentler arasında birden çok
ilişki tanımlanmasına izin verir.
Örneğin çalışanlar ve görevler arasında
çoktan çoğa ilişki vardır. Bir başka deyişle
bir çalışana birden fazla görev veya bir
görev birden fazla çalışana atanabilir. Bu
yapıda çalışan ve görev segmentleri
arasında birden çok bağlantı noktası
oluşmaktadır. Eğer hiyerarşik veritabanı
modeli kullanıyor olsaydı bir çalışana
yalnızca
tek
bir
görev
ataması
yapılabilecekti. Bu nedenle hiyerarşik
modelin çalışanlar ve görevler arasındaki
ilişkileri tanımlamada kullanılması yeterli
değildir.
AĞ MODELİNİN TEMEL YAPISI
Ağ veritabanı modeli küme, sahip
ve üyeden oluşmaktadır.
Bu yapıda;
Küme: Kayıtlar arasındaki ilişki,
Sahip: Hiyerarşik modelde
olarak isimlendirilen kayıt,
ata
Üye: Hiyerarşik modelde çocuk
olarak isimlendirilen kayıt, olarak
isimlendirilmektedir.
AĞ VERİTABANI MODELİ
Ağ Modelinin Avantajları
Ağ veritabanı modeli tasarımı oldukça kolaydır.
Hiyerarşik modeldeki tüm işlevleri gerçekleştirmekte ayrıca hiyerarşik
modelden kaynaklanan eksikliklerin birçoğunu gidermektedir.
Birebir veya bire-çok ilişkiler kurulabilir.
Kayıtlar sahipleri olmadan tanımlanamadığı için veri bütünlüğü sağlanır.
AĞ VERİTABANI MODELİ
Ağ Modelinin Dezavantajları
Veritabanmda değişiklik yapılması oldukça zordur. Yapılacak bir
değişiklikten sonra bu veritabanını kullanan uygulama yazılımlarının
tekrardan yapılması gereklidir.
Veritabanı yazılımı geliştiren kullanıcıların veriye ulaşabilmeleri için
veritabanının tüm içyapısını bilmesi gereklidir.
Ağ veritabanı modelinde de hiyerarşik modelde olduğu gibi her defasında
tek bir kayda erişilebilir.
Ağ veritabanı modeli kullanıcı dostu değildir. Teknik bilgisi yüksek
programcı ve yöneticiler içindir.
İLİŞKİSEL VERİTABANI MODELİ
Verilerin aralarında ilişki kurulabilen tablolar şeklinde düzenlendiği
veritabanı modeline ilişkisel veritabanı modeli denir. Günümüzde en
yaygın olarak kullanılan veritabanı modelidir. Veritabanı yönetim sistemi
yazılımlarının büyük çoğunluğu ilişkisel veritabanı modelini
kullanmaktadır. Bu yazılımlara Oracle, MS-SQL Server, Sybase, Informix ve
MySQL'i örnek olarak verebiliriz.
İlişkisel veritabanı, tablolardan oluşmaktadır. Bu modelde tablolar çeşitli
anahtar alanlar ile birbirlerine bağlanır. Tablolar arasındaki ilişkiler,
matematiksel ilişkilerle (ilişkisel cebir) temsil edilmektedir.
İLİŞKİSEL VERİTABANI MODELİ
İLİŞKİSEL VERİTABANI MODELİ
Seçme (Select): Herhangi bir tabloda bulunan tüm verileri veya
istenilenleri göstermek amacıyla kullanılır. Örneğin, bir ilçe tablosunu
düşünecek olursak bu İlçe tablosunda seçme işlevinin uygulanması
tablonun tümünü veya belirli bir kısmını getirip, diğer kısmını
getirmeyebilirsiniz.
İLİŞKİSEL VERİTABANI MODELİ
İzdüşürme (Project):
Herhangi bir tablodan sadece belirli sütunların yer aldığı seçme
işlevlerinin yerine getirilmesidir. Örneğin, ilçe tablosundan sadece ilçe
adları veya ilçe adlarıyla birlikte toplam nüfus seçilebilir.
İLİŞKİSEL VERİTABANI MODELİ
Birleşim (Union):
Birden fazla tabloda yer alan bilgileri, yeri geldiğinde tek bir tabloymuş
gibi sunabilmelidir. Birleşme işlevinin kullanılması için bilgi alanları aynı
karakteristik özelliklere sahip olmalıdır. İki veya daha fazla tablo aynı
alanları paylaşıyorlarsa birleştirilebilir.
Örneğin, sınava giren öğrenci numaralarını içeren tablo ile sınava
girmeyen öğrenci numaralarını içeren iki tablo birleştirilebilir.
İLİŞKİSEL VERİTABANI MODELİ
Kesişim (Intersect):
Birleşmenin tersi olarak ifade edilebilir. Her iki tabloda da ortak olan
satırları gösterir. Örneğin matematik ve fizik dersini alan öğrencilerin
numaralarını içeren iki tablo kullanılarak her iki dersi de alanların tablosu
oluşturulabilir.
İLİŞKİSEL VERİTABANI MODELİ
Fark (Difference):
Bir tabloda da olup diğer tabloda olmayan satırları gösterir. Örneğin
matematik ve fizik dersini alan öğrencilerin numaralarını içeren iki tablo
kullanılarak sadece tek bir ders alan öğrencilerin tablosu oluşturulabilir.
İLİŞKİSEL VERİTABANI MODELİ
Çarpım (Product):
İki tablo arasında oluşturulan ilişkiden mümkün olan tüm satırları içeren
bir liste üretilmesidir. Örneğin bir tabloda 2 diğerinde 3 satır bulunuyorsa
çarpım işleminden sonra 2x3=6 satırdan oluşan bir liste oluşur.
İLİŞKİSEL VERİTABANI MODELİ
Bölme (Division):
İki tablodan tek bir tablo üretir. İki sütünlu ve tek sütunlu iki tablo olması
gereklidir.
Tablo 1 ve Tablo 2 tablolarının her
ikisinde de Alan1 sütunu ortaktır.
Ancak Tablo2 Alan2 sütununu
içermemektedir.
Tablo 1 ve Tablo 2 'nin Alan 1
sütunlarında ortak olarak "A" ve "B"
kayıtları bulunmaktadır.
"A" ve "B" kayıtlarının bulunduğu
satırda Alan 2 sütununda ortak
olarak "1" kaydı bulunmaktadır.
Sonuç olarak Tablo 1'in Tablo2'ye
bölünmesi sonucu '1' değerini içeren
tablo oluşur.
İLİŞKİSEL VERİTABANI MODELİ
Birleştirme (Join):
İki veya daha fazla tabloda bulunan kayıtların birleştirilmesine izin verir.
İlişkisel veritabanının en önemli işlevidir.
Üç çeşit birleştirme şekli bulunmaktadır.
• Natural Join
• Outer Join
• Equi Join
İLİŞKİSEL VERİTABANI MODELİ
Natural JOIN (Doğal Birleştirme) sadece seçilen ortak değerlerle tabloları
bağlar. Örneğin öğrenci ve nöbet tabloları birleştirilebilir.
İLİŞKİSEL VERİTABANI MODELİ
Natural Join üç aşamalı işlemin sonucudur.
1. Tablolar arasında Çarpım işlemi oluşturulur. Öğrenci ve nöbet tabloları
arasındaki çarpım işleminden sonra 25 satırdan oluşan bir tablo oluşur.
İLİŞKİSEL VERİTABANI MODELİ
2. Seçme işleviyle sadece "Öğrenci No" değerleri eşit olan satırlar
listelenir.
3. Birinci ve ikinci adımlarda oluşturulan tablolar için izdüşürme işlevi
uygulanarak tekrarlanan sütunlar yok edilir.
İLİŞKİSEL VERİTABANI MODELİ
Equi Join (Eşit Birleştime) tabloların sütunlarını karşılaştırarak belirtilen
duruma göre tabloları birbirine bağlar. Naturel Join'den farklı olarak
tekrarlanan sütunları ve kayıtları ortak tabloda gösterir.
Outer Join (Dışsal Birleştirme) tabloların sütunlarını karşılaştırarak
birbiriyle eşleşmeyen kayıtlarında boş veya NULL olarak gösterildiği
birleştirme biçimidir. Örneğin nöbet tablosunda bir öğrenci bulunmasaydı
iki tablonun birleşimi aşağıdaki gibi olacaktı.
NESNEYE YÖNELİK VERİTABANI MODELİ
Nesneye yönelik veritabanı modeli 1990'lı yılların başlarında ortaya
çıkmıştır.
Bu modelde nesne kayıtları, sınıf ise kayıt gruplarını ifade etmektedir.
Tablo ise nesne tipi olarak kabul edilmektedir.
Nesneye yönelik veritabanında sayı, karakter vb. veri tipleri dışında harita,
fotoğraf, ses, video gibi standart olmayan veri tipleri de
tanımlanabilmektedir.
Veri gösterim hızı bu modelde arttığı gibi veritabanında komutların
kullanımı da oldukça esnektir. Ancak nesneye yönelik veritabanı
modelinin kullanımı beklenilen düzeyde gerçekleşmemiştir.
VARLIK-İLİŞKİ MODELİ (E-R MODELİ)
Varlık- ilişki modeli P.P Chen tarafından 1976 yılında geliştirilmiştir. Veri
çözümlemede ve anlamlandırmada en çok kullanılan modeldir. Fakat
bugüne kadar bu modele dayalı veritabanı yönetim sistemi yazılımı
geliştirilmemiştir.
Bu model kullanılarak öncelikli olarak veriler çözümlenir. Çözümlenen
verilere dayanarak veri modellemesi yapılır. Yapılan veri modellemesi
içinde yer alan veriler ve veriler arası ilişkilerin anlamları, özellikleri
incelenerek Varlık-İlişki diyagramları oluşturulur.
Bu aşamalardan sonra veritabanı yönetim sistemi yazılımı belirlenir.
Veritabanı yönetim sisteminin veri modelleri temel alınarak Varlık-İlişki
diyagramları veritabanı tablolarına dönüştürülür.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Varlık ve Nitelikleri
Varlık-ilişki modelinde geçen varlık, var olan birbirlerinden ayırt edilebilen
nesneleri ifade eder. Örneğin bir sınıfta yer alan sıra, tahta, öğrenci, kitap
vb. nesnelerin tümü "varlık" olarak değerlendirilir. Varlıkları tanımlayan ve
birbirinden ayırt eden birçok özellik bulunmaktadır. Bu özelliklere ise
"nitelik" (attributes) adı verilir. Örneğin öğrenci kümesi içindeki her
öğrencinin öğrenci numarası, ad, soyad gibi özellikleri öğrenci varlık
kümesinin nitelikleridir.
Üniversite de varlık olarak ifade edilebilecek nesnelere örnek veriniz.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Varlık Kümesi
Aynı türdeki varlıkların oluşturduğu kümeye "varlık kümesi" denir.
Örneğin bir üniversitede öğretim görevlileri, öğrenciler, hizmetliler,
dersler vb. varlık kümelerine örnek gösterilebilir.
Varlık-İlişki diyagramlarında varlık kümeleri dikdörtgen şeklinde belirtilir.
Nitelikler ise oval bir daire içinde belirtilerek ilgili varlık kümesine çizgi ile
bağlanır. Şekilde öğrenci varlık kümesi ve öğrenci no, ad, soyad
niteliklerinin Varlık- İlişki diyagramı görülmektedir.
Varlık ilişki diyagramında varlık nasıl gösterilir?
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Etki Alanı
Niteliğin veri modelinde alabileceği değerlerin tümüne etki alanı denir.
Örneğin öğrenci varlık kümesinde bulunan öğrencilerin cinsiyet niteliğinin
etki alanı kadın veya erkek değerlerinden oluşur .
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Anahtar Nitelik
Varlık kümesi içindeki her varlığı tanımlamaya yarayan niteliktir. Anahtar
nitelik her bir varlık için eşsiz olmalıdır. Örneğin Öğrenci No öğrenci varlık
kümesinde anahtar niteliktir. Çünkü her öğrencinin farklı bir numarası
bulunmaktadır. Benzer şekilde vatandaş varlık kümesinde her vatandaş,
farklı bir kimlik numarasına sahiptir. Bu nedenle T.C. Kimlik No anahtar
niteliktir.
Anahtar nitelik, Varlık-İlişki diyagramında niteliğin altı çizilerek gösterilir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Türetilen Nitelik
Bir varlığa ait nitelik veya nitelikler kullanılarak başka bir nitelik türetilebiliyor
ise bu niteliğe türetilen nitelik denir. Örneğin öğrenci kümesinde bulunan
öğrencilerin doğum tarihi niteliği kullanılarak yaş niteliği elde edilebilir. Bu
örnekten de anlaşılacağı gibi türetilen niteliklerin veri modeli tasarımında
ayrıca tanımlanmasına gerek yoktur.
Birleşik Nitelik
Birden fazla niteliğin birleştirilmesi sonucu oluşan niteliğe birleşik nitelik
denir. Örneğin mahalle, cadde, sokak, kapı no, şehir gibi nitelikler
birleştirilerek adres isimli yeni bir nitelik oluşturulabilir.
Tek ve Çok Değerli Nitelikler
Bir varlığa ait niteliğin aldığı değer tek ise, buna tek değerli nitelik denir. Eğer
varlığa ait nitelik birden fazla değer alabiliyor ise, bu nitelik çok değerli nitelik
olarak ifade edilir. Örneğin öğrenci varlığının öğrenci numarası niteliği tek
değerli nitelik, yabancı dil niteliği birden çok değer alabileceği için çok değerli
niteliktir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
İlişki
En az iki varlığın birbirleriyle olan bağlantısına ilişki denir. İlişkiler ikili, üçlü,
dörtlü vb. şekilde olabilir. Örneğin bir öğrenciyle dersi arasındaki ilişki ikili,
öğrencinin aldığı ders ve bu dersi veren öğretmenle ilişkisi üçlü ilişkidir.
İlişkiler Varlık-İlişki diyagramında dörtgen ile gösterilir. Örnek olarak
öğretmen varlık kümesi ile ders varlık kümesi arasında "verir" ilişkisi öğrenci
varlık kümesi ile ders varlık kümesi arasında "alır" ilişkisi oluşturulabilir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
İlişki Kümesi:
Aynı türdeki ilişkilerin oluşturduğu kümeye ilişki kümesi adı verilir. İlişki
kümeleri ikili, üçlü, dörtlü vb. şekilde olabilir. Bu tür ilişki kümelerine çoklu
ilişki kümesi denir. Varlık kümeleri kendi içinde de ilişkili olabilir. Örneğin
vatandaş kümesi içindeki kişi varlıkları hem birbirleriyle evli, hem de küme
içerisinde bulunan kişilerin çocukları olabilir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Rol:
Varlıkların birbirleri arasında kurdukları ilişkilerde üstlendikleri işlevlere rol
denir. Örneğin, öğrenci ve ders varlık kümeleri arasında kurulan ilişkide
öğrenci dersi alan, ders ise öğrenci tarafından alınandır. Benzer biçimde bir
kurumda çalışan personel arasında kurulan yönetici ilişkisinde hangi
personelin rolünün yönetici, hangi personelin rolünün ise yönetilen
olduğunun belirtilmesine gerek vardır.
İlişki Türleri
Varlık kümeleri arasındaki üç çeşit ilişki kurulabilir.
Bire Bir İlişki (One To One - 1:1)
Bire Çok İlişki (One To Many - 1:N)
Çoka Çok İlişki (Many To Many- N:N)
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Bire Bir İlişki (One To One - 1:1)
İki varlık kümesinde bulunan varlıklar arasında sadece bir kez eşleşme olması
durumudur. Her varlığa karşılık tek bir varlık eşleşir. Örneğin öğrenci varlık
kümesi ile veli varlık kümesi arasında bire-bir ilişki bulunmaktadır.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Bire Bir İlişki (One To One - 1:1)
Öğrenci varlık kümesi ile veli varlık kümesi arasında bire-bir ilişkinin varlıkilişki diyagramı aşağıdaki gibi gösterilmektedir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Bire Çok İlişki (One To Many - 1:N)
İki varlık kümesi arasında bir kümede bulunan varlık ile diğer kümeden
birden çok varlık arasında ilişki kurulabilir. Örneğin müşteri varlık kümesi ile
sipariş varlık kümesi arasında bire-çok ilişki bulunmaktadır. Her müşteri
birden çok sipariş verebilir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Bire Çok İlişki (One To Many - 1:N)
Müşteri varlık kümesi ile Sipariş varlık kümesi arasında bire-çok ilişkinin
varlık- ilişki diyagramı aşağıdaki gibidir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Çoka Çok İlişki (Many To Many- N:N)
Bir varlık kümesinde bulunan birden çok varlık başka bir varlık kümesinde
bulunan birden çok varlık ile ilişki kurabiliyor ise bu tür ilişkilere çoka-çok
ilişki adı verilir.
Örneğin öğrenci varlık kümesi ile ders varlık kümeleri arasındaki ilişki çoka
çok ilişkidir. Çünkü bir öğrenci birden çok ders alabilirken, bir dersi birden çok
öğrenci alabilir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Çoka Çok İlişki (Many To Many- N:N)
Öğrenci varlık kümesi ile Ders varlık kümesi arasında çoka-çok ilişkinin varlıkilişki diyagramı aşağıdaki gibidir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Varolma Bağımlılığı
Bir varlığın bulunması için diğer bir varlığın bulunması gerekiyor ise buna
varolma bağımlılığı adı verilir. Örneğin bir öğrencinin var olabilmesi için bir
bölümün var olması gereklidir. Çünkü bir öğrenci mutlaka bir bölüme kayıtlı
olmalıdır. Böyle bir durumda öğrenci bağımlı, bölüm ise baskın varlıktır.
Güçlü ve Zayıf Varlık Kümeleri
Varlık kümesi içerisinde bulunan varlıkların niteliklerinden biri veya hepsi
alınsa bile oluşan değer eşsiz değilse bu varlık kümesine zayıf varlık kümesi
denir. Zayıf varlık kümesinde hiçbir nitelik veya nitelikler anahtar nitelik
olamaz. Zayıf varlık kümeleri Varlık-ilişki diyagramında çift çizgili dikdörtgen
şeklinde gösterilir.
Güçlü varlık kümesi ise içerisinde bulunan niteliklerden en az bir tane
anahtar nitelik oluşturulabilen varlık kümeleridir. Varlık-ilişki diyagramında
güçlü varlık kümeleri dikdörtgen şeklinde gösterilir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Varlık-İlişki Diyagramlarının Tablolara Dönüştürülmesi
Bire Bir (One To One - 1:1) İlişkilerin Tablolara Dönüştürülmesi
Varlık kümeleri arasında bire bir ilişki bulunmakta ise varlık kümeleri
tablolara varlık kümeleri içerisinde bulunan varlıkların nitelikleri ise alanlara
dönüştürülür. Varlıkların anahtar nitelikleri, anahtar alan olarak tabloda
tanımlanır. Varlık kümelerinde birincil anahtar niteliği, diğer varlık kümesine
yabancı anahtar nitelik olarak eklenir ve alana dönüştürülür. Bu şekilde bire
bir ilişkiye sahip varlık kümeleri tablolara dönüştürülmüş olur.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Örneğin öğrenci ve veli varlık kümeleri arasındaki ilişkiyi gösteren Varlık-ilişki
diyagramı tabloya dönüştürülmek istenirse;
•
Her iki varlık kümesi tabloya dönüştürülür. Öğrenci ve veli tabloları oluşturulur.
•
Varlık nitelikleri alanlara dönüştürülür. Anahtar niteliklerde anahtar alan olarak tanımlanır.
Öğrenci no öğrenci tablosunda birincil anahtar veli no ise veli tablosunda birincil anahtar
olarak tanımlanır.
•
Öğrenci tablosunda bulunan öğrenci no veli tablosuna yabancı anahtar olarak veya veli
tablosunda bulunan veli no öğrenci tablosuna yabancı anahtar olarak eklenir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Bire Çok (One To Many - l:N) İlişkilerin Tablolara Dönüştürülmesi
Bire çok ilişki içerisindeki varlık kümeleri de bire bir ilişki içerisinde bulunan
varlık kümelerinin tablolara dönüştürülmesi şekline benzemektedir. Varlık
kümeleri tablolara, nitelikler alanlara ve anahtar nitelikler de anahtar
alanlara dönüştürülür. Tek varlığın eşleştiği varlık kümesindeki anahtar nitelik,
diğer varlık kümesine yabancı anahtar nitelik olarak eklenir. Örneğin öğrenci
ve bölüm varlık kümeleri arasındaki bire-çok ilişkide, bölüm varlık kümesinde
bulunan "bölüm no" niteliği yabancı anahtar olarak öğrenci varlık kümesine
eklenir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Çoka Çok (Many To Many- N:N) İlişkilerin Tablolara Dönüştürülmesi
Çoka çok ilişkili varlık kümeleri de diğer ilişkilerde olduğu gibi tablolara
dönüştürülmektedir. Ancak çoka çok ilişkide iki tablo arasındaki ilişkiyi
kurmak için ayrıca ilişki tablosu oluşturulur. Varlık kümeleri arasındaki ilişkiyi
oluşturan anahtar alanlar, ilişki tablosuna yabancı anahtar olarak eklenir. İlişki
tablosunda ilişki ile ilgili diğer nitelikler de alan olarak oluşturulur. Örneğin
öğrenci ve öğrenci ve ders varlık kümelerindeki ilişki diyagramı tabloya
dönüştürülürken öğrenci, ders ve iki tablo arasında ilişki kurulmasını
sağlayacak ilişki tablosu oluşturulur. Öğrenci tablosunda bulunan anahtar
alan "öğrenci no" ve ders tablosunda bulunan ve anahtar alan "ders id"
alanları ilişki tablosuna yabancı anahtar olarak eklenir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Çok Değerli Niteliklerin Dönüştürülmesi
Varlık kümelerinde varlıklar, çok değerli nitelik içerebilirler. Örneğin bir kişi
varlığının yabancı dil niteliği çok değerli niteliktir. Çünkü birden çok değer
alabilir. Çok değerli nitelik içeren varlık diyagramları tablolara
dönüştürülürken, herbir çok değerli nitelik için ayrı tablo oluşturulur.
Oluşturulan tablo çok değerli nitelik ve çok değerli niteliğin bulunduğu
tablonun anahtar alanlarından oluşur. Örneğin kişi varlık diyagramı tabloya
dönüştürülecek olursa, yabancı dil niteliği için yeni bir tablo oluşturulur. Bu
tablo "kişi no" ve "yabancı dil" alanlarından oluşur. Bu tablonun anahtar alanı
"kişi no" ve "yabancı dil" alanlarının birleşimidir.
VARLIK-İLİŞKİ MODELİ KAVRAMLAR
Download