BTP102 VERİTABANI YÖNETİM SİSTEMLERİ 1 Öğr.Gör.Emre KAÇMAZ
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 İLİŞKİSEL VERİTABANLARINDA NELERE DİKKAT EDİLMELİ?
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Veri Kaybından kaçınma Veri kaybetmeden tabloyu nasıl parçalarız? İlişkisel bütünlüğün sürdürülmesi Bir yayıncıyı veritabanından kaldırmak istiyorsak o yayınevine ait kitapları da silmeliyiz. Farklı görünümlerin oluşturulması Veriler farklı tablolara dağılınca verinin farklı görünümlerini elde etmek zorlaşacak.
KÜTÜPHANE Varlık-Bağıntı Şeması
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Varlık Sınıfı Öznitelik Birincil Anahtar Bağıntı
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bağıntı Tipleri: 1 – 1 1 – Çok (Yayınevi – Kitap) Çok – Çok (Kitap – Yazar)
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 1 – Çok Bağıntı Kurulması “Yayımcısı olma” bağıntısını kurmak için, YAYINEVİ varlık sınıfı için birincil anahtar olan YayıneviID özniteliğini KİTAP tablosuna eklemek yeterlidir. Bu durumda KİTAP varlık sınıfının tablo şeması KİTAP(ISBN, Başlık, YayıneviID, Fiyat) biçimine dönüşür.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Yabancı Anahtar İşte {YayıneviID} Kitap sınıfı için yabancı anahtardır. Yabancı anahtar bulunduğu sınıfın bir anahtarı (süper, aday, birincil) değildir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Yabancı Anahtar Ancak bir başka tablonun anahtarı olduğu için diğer tablonun her varlığı ile bulunduğu tablodaki varlıkların eşlenmesini sağlayacaktır.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Yabancı Anahtar Genel olarak, {A2}, S tablosunda, S tablosu/tablo şeması için bir aday anahtar olsun. Bu durumda {A2} özniteliğini T Tablosuna eklersek, S ve T tabloları arasında 1- Çok bağıntı kurulmuş olur.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Yabancı Anahtar Çünkü; T tablosundaki her varlık S tablosunda yalnız bir varlık ile bağıntılıdır. Ayrıca T tablosunda birden çok varlık S tablosundan tek bir varlık ile bağıntılı olabilir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Yabancı Anahtar {A2}, S için anahtar, T için bir yabancı anahtardır, T için bir anahtar değildir. T tablosuna hedef, S tablosuna kaynak tablo denir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Tablolar arasında 1-1 bağıntılar da benzer olarak kurulur.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Çok – Çok Bağıntı Kurulması Bağıntı, iki ayrı 1 – Çok bağıntı olarak düşünülürse ne olur?
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Örneğin; KİTAP sınıfındaki ISBN, YAZAR sınıfına, YAZAR sınıfındaki YazarID KİTAP sınıfına eklenirse
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 KİTAP sınıfının tablo şeması KİTAP(ISBN, Başlık, Fiyat, YazarID) olacak ve birden çok yazar tarafından yazılmış kitaplar için tekrarlamalar oluşacaktır.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bunun yerine Çok – Çok bağıntıyı iki 1- Çok bağıntıya bölen yeni bir tablo oluşturulabilir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Varlık Sınıfı: KİTAP/YAZAR Tablo Şeması: KİTAP/YAZAR(ISBN,YazarID)
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bilgi Tutarlılığı Yabancı anahtarın her değeri kaynak tablosunda bir başvuru anahtarı değeriyle eşlenmelidir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bilgi Tutarlılığı Örneğin KİTAP tablosundaki {YayıneviID} YAYINEVİ tablosundaki {YayıneviID} ile eşlenmiyorsa yayımcısı olmayan bir kitabımız var demektir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bilgi Tutarlılığı İşte bu durumun oluşmaması problemine Bilgi Tutarlılığı denir. Birçok VTYS bilgi tutarlılığının korunması için araçlara sahiptir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bilgi Tutarlılığı Bilgi tutarlılığı iki türlü korunabilir: Ardarda Güncelleme Ardarda Silme
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bilgi Tutarlılığı Ardarda Güncelleme: Eğer kaynak tabloda anahtar değeri değişirse buna bağlı tabloya ait tüm yabancı anahtar değerleri de değişir. Ardarda Silme: Eğer kaynak tabloda bir varlık silinirse hedef tabloda buna bağlı tüm varlıklar da silinir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 NULL (BOŞ) Bir öznitelik için değerin bilinmediğini yada varlık için uygulanabilir bir değer olmadığını bildirir. Tamamlanmamış yada kabul edilmeyen bilgilerle başa çıkma yoludur.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 NULL (BOŞ) Null, bir değer değil, değerin yokluğunu gösteren bir imdir. Sayısal olarak “0” yada karakter olarak “ “ ‘a eşdeğer değildir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 NULL (BOŞ) Null olmadan durumu açıklamak için kullanıcı için anlamlı olmayabilecek veriler eklemek gerekebilir. Bu ise kullanıcıyı şaşırtacaktır.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Dizin (Index) Dosyaları Çok miktarda veri içeren dosyalarda istenen verilerin aranıp, bulunması uzun zaman alabilir. Dizin dosyalarının amacı veritabanı dosyalarındaki veriye doğrudan erişimi sağlamaktır.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Dizin (Index) Dosyaları
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Dizin (Index) Dosyaları Bir tablo birden çok özniteliğe göre düzenlemiş dizinlere sahip olabilir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Dizin (Index) Dosyaları Birincil anahtarın dizinine birincil dizin denir. Diğer tüm dizinler ikincil dizin olarak adlandırılır. Bir dizin, bir anahtara bağlıysa bu dizine benzersiz dizin denir.