Veritabanı Yönetim Sistemleri



VERİTABANI nedir?

  • Herhangi bir konuda birbiriyle alakalı ve düzenli bilgiler topluluğudur.
  • Veritabanlarında tutulan verilere erişim geleneksel dosyalama sistemlerine göre daha kolay ve hızlı bir şekilde gerçekleşir.
  • Veritabanı içerisinde bulunan veriler üzerinde değişiklik yapma, verileri istenilen kriterlere göre görüntüleme veritabanının kendisine ait bir yazılımı veya hazırlanan program aracılığıyla gerçekleştirilebilir.
Veritabanı: Tablolardan, Tabloların satır sütunlarından, sütunlara yazılan verilerin tiplerinden, primary key(birincil anahtar)den, foreign key(yabancı anahtar)den, unique key(tekil, benzersiz anahtar) den, joining(ilişkilendirme)den oluşmaktadır.
















Primary Key: Tabloda tutulan verilerin aynı değeri iki kez içermeyecek olan sütun, diğer adıyla birincil anahtar adını alır. Bu sütun asla NULL değer içeremez. Null değeri nerde ise  orada bilgi yazmıyor demektir.

Unique Key: O da primary key gibi aynı değerleri iki kez içermeyen sütundur. Ama null değer içermeme diye kuralı yoktur. Öyle bir sütuna verilen isim unique key dir.

Foreign Key: Bir diğer adı ile yabancı anahtardır. Yabancı anahtar sütunu aynı tablo veya başka tabloda ki primary key sütunla ilişkilendirilen sütundur.



İlişkilendirme(joining): Tek sorgu ile bilgi alma işlemine denir. 


             İLİŞKİSEL VERİTABANI TASARIMI

Yukarıdaki tablonun varlık diyagramını gösterelim.




Yuvarlaklar sütun isimlerine karşılık geldi. Altı çizili kelimelerin ne olduklarını anlatmıştım. Farlı olarak tablo isimlerini bu diyagramda VARLIK ismi olarak adlandırıyoruz. İç içe yuvarlak bir öğrencinin birden fazla telefonu olabileceğini göstermektedir. İç içe yuvarlak birden fazla bilgi içerebiliyor anlamındadır. Ama gösterimin database (veritabanında) de direk gösteremiyoruz. 1 ve N ilişki çeşididir .Anlam  örneğin sade olması açısından. 1 bölümün N tane öğrencisi olduğu anlamını taşır. Ama fark edilebiliyor ki N tane bölümün  1 tane öğrencisi varmış gibi bir anlam tersten okunduğunda ortaya çıkıyor  bu durum tersten sağlamayacaktır. M e N olsaydı: M tane öğrencinin N tane bölümü, N tane bölümün M tane öğrencisi gibi bir iki tarafında sağlanacağı durum çıkıyor. Niye 1'e N'lik ilişki yazdım? Çünkü anlaması kolay olsun diye . 1'e N'lik ilişkide görüldüğü üzre foreign key adı altında sütun N'lik kısım olan Öğrenci tablosuna koyulmuştur. Bu bir kuraldır. Tablo tasarımı veya diğer bir anlamda database tasarımında göüldüğü üzre bolum_id  foreig key'ini Öğrenci tablosuna son sütuna yerleştirmiştik. M'e N'lik bir ilişki olsaydı bolum_id  ve öğrenci tablosundan da gelecek okulNo_id diye adlandıracağımız öğrenci tablosundaki okulNo sütununa bağlayacağımız sütunu ayrı bir tabloda tutacağız.


Yorumlar

Bu blogdaki popüler yayınlar

Python'da Liste İçin Varyans, Standart Sapma, Ortalama, Minimum bulma, Maksimum bulma

Python'da Görüntü İşleme - Resmi Siyah Beyaz Yapma