BTP102 VERİTABANI YÖNETİM SİSTEMLERİ 1 Öğr.Gör. Emre KAÇMAZ ANADOLU ÜNİVERSİTESİ
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 VERİTABANI NEDİR? Veritabanı, birbirleriyle bağlantılı verilerin yığını, koleksiyonudur. Bir veritabanı; Gerçek dünyanın bazı yönlerini yansıtır. İçsel bütünlüğe sahip, mantıksal bir koleksiyondur. Özel amaçlı bir veri yığını için kurulur.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 VERİTABANI YÖNETİM SİSTEMİ (VTYS) NEDİR? Veritabanı Yönetim Sistemi (VTYS), kullanıcılara veritabanı oluşturma ve bu yapıyı yürütme olanağı sağlayan programlar bütünüdür.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 VTYS, çeşitli kullanıcı ve uygulamaların veritabanını tanımlama, biçimleme, değiştirme, paylaşım ve koruma işlemlerini yürüten genel amaçlı yazılım sistemidir. Tanımlama: Veri tipleri, yapıları ve uygulamaları Biçimleme: VTYS tarafından kontrol edilen kayıt biriminde saklama Değiştirme: Saklanan bilginin sorgulanması, gerçek hayatta temsil ettiği örneğin değişimlerine göre güncelleme, rapor üretilmesi Paylaşım: Aynı anda birden çok kullanıcı ve uygulamanın erişimine izin verme Koruma: Yazılım ve donanım hatalarına, yetkisiz ve zararlı erişime karşı
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Çoklu – Değer Problemi Bazı kitaplar birden çok yazar tarafından yazılmıştır. Tek tabloda kitabın yazarlarıyla ilgili bilgilerin tamamının gösterilebilmesi için neler yapabiliriz?
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Örnek tabloda olduğu gibi her yazar için kitabın her verisi tekrarlanarak yeni bir satır oluşturulabilir. Tek bir satırda birden çok yazar için sütun açılabilir. Tüm yazarlar için sadece bir sütun kullanılabilir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Çoklu – Değer Problemi Tüm yazarlar için sadece bir sütun kullanılabilir. Aradığımız yazarı bulmamız zorlaşacak.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Çoklu – Değer Problemi Tek bir satırda birden çok yazar için sütun açılabilir. Hangi kitap, kaç yazar tarafından yazılmış? Bir çok boş hücre oluşacak.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Çoklu – Değer Problemi Örnek tabloda olduğu gibi her yazar için kitabın her verisi tekrarlanarak yeni bir satır oluşturulabilir. Birçok veri gereksiz olarak yinelenecek.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Ayrıca; Güncelleme Sorunları Tablodaki bir veri değiştiğinde, o veriyi içeren tüm hücreler değiştirilmeli Veri Ekleme Sorunları Tüm bilgilerini bilmediğimiz bir yayınevini tabloya eklemek istersek ne yapacağız? Veri Silme Sorunları Bir yayınevine ait tüm kitapları tablodan çıkarmak istediğimizde yayınevine ait bilgileri de kaybedeceğiz.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bu nedenlerle, veritabanını tek bir tablo ile oluşturmak iyi bir yöntem değildir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bunun yerine veritabanı için topladığımız veri yığınını ayrı ayrı tablolara parçalayabiliriz. Bu tabloları, aralarında oluşan bağıntılarla birbirlerine bağladığımızı düşünelim. Bu tür veritabanlarına da İlişkisel (Bağıntılı) veritabanı (Relational Database) diyoruz. (E.F. Codd, 1970)
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 VARLIK (Entity) : Veritabanına ait bir tablonun bir satırı VARLIK SINIFI (Entity Class) : Tablonun içerebileceği mümkün tüm varlıklar VARLIK KÜMESİ (Entity Set) : Tablonun o anda verilen varlık sınıfına ait varlıkların kümesi
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 ÖZNİTELİK (Attribute): Tablonun isimlendirilmiş bir sütunu Derece (Degree): Tablo içindeki öznitelik sayısı Kardinalite (Cardinality) : Tablodaki varlık sayısı ALAN (Domain) : Bir yada daha çok öznitelik için geçerli olan mümkün tüm değerlerin kümesi
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Varlık Sınıfı: YAZAR Öznitelikler Varlık Sınıfı: YAYINEVİ
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Varlık Sınıfı: KİTAP Kardinalite Derece
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bir varlık sınıfının öznitelikleri; Veritabanından elde etmek istediğimiz bilgileri sağlar. Varlık sınıfındaki bir varlığın tek türlü tanınmasına yardımcı olurlar. Tablolar arası ilişkilerin kurulmasını sağlarlar.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Tablo Şeması: Tablo adı ile isimlendirilmiş öznitelikler kümesidir.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Varlık Sınıfı: YAYINEVİ Tablo Şeması: YAYINEVİ(YayıneviID,Yayınevi Adı, Yayınevi Telefon No)
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Varlık Sınıfı: YAZAR Tablo Şeması: YAZAR(YazarID,Yazar Adı, Yazar Soyadı,Yazar Telefon No)
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Varlık Sınıfı: KİTAP Tablo Şeması: KİTAP(ISBN, Başlık, Fiyat)
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bir tablo şu özellikleri sağlar; Diğer tüm tablolardan farklı bir isme sahiptir. Her özniteliğinin ayrı bir adı vardır. Bir özniteliğin tüm değerleri aynı alandan alınır. Her varlık bir diğerinden farklıdır. Özniteliklerin ve varlıkların sıralanışı tabloyu değiştirmez.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bağıntı Anahtarları (Relation Keys) Süper Anahtar: Bir varlığın, varlık sınıfında tek türlü tanınmasını sağlayan bir yada birden çok öznitelik kümesi Aday Anahtar: Bağıntı için süper anahtar olacak bir özalt nitelik kümesine sahip olmayan süper anahtar Birincil Anahtar(Primary Key): Tablodaki varlıkların tek türlü tanınması için seçilen aday anahtar Yabancı Anahtar(Foreign Key): Bir başka tablonun aday anahtarı olan bir yada birden çok öznitelik kümesi
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 (YazarID,Yazar Adı) Süper Anahtar (YazarID) Aday Anahtar – Birincil Anahtar
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 (YayıneviID,Yayınevi Adı) Süper Anahtar (YayıneviID,Yayınevi Telefon No) Süper Anahtar (YayıneviID) , (Yayınevi Telefon No) Aday Anahtar (YayıneviID) Birincil Anahtar
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Bağıntı Anahtarları B, tablonun öznitelikleri kümesi ve A ⊆ B olsun. A 'nın bir anahtar adayı olabilmesi için şu koşullar sağlanmalıdır: Teklik: Aday anahtarın aldığı her değer varlık sınıfına ait tek varlığı ifade eder. İndirgenemezlik : Aday anahtarın hiçbir özalt kümesi teklik özelliğini sağlamaz.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Her bağıntının en az bir aday anahtarı vardır.
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Birincil Anahtar Bir tablonun birden fazla aday anahtarı varsa: Biri birincil anahtar seçilir. Diğerleri anahtar seçeneği olur
BTP102 - VERİTABANI YÖNETİM SİSTEMLERİ 1 Her bağıntının bir birincil anahtarı bulunması zorunludur. Birincil anahtarda bulunan hiçbir özniteliğin değeri hiçbir varlık için boş olamaz.