İlişkisel Veritabanı Yönetim Sistemi (RDBMS)- 1

Merhabalar;

Bu yazımda ilişkisel veri tabanı yönetim sisteminin nelerden oluştuğundan bahsetmeye çalışacağım😊

 

İşletmelerde her departmanın ayrı ayrı raporlar oluşturduğundan bahsetmiştik. Ayrı ayrı raporların olması geleneksel veri tabanı yönetim sisteminde bazı sorunlara neden olabiliyordu. Bu sorunların yaşanmaması için günümüzde  ilişkisel veri tabanı yönetim sistemi tercih edilmektedir.

İlişkisel veri tabanı yönetim sistemi, veri tabanımızda bulunan tablolar arasında ilişki kurarak, tablolarımızın birbirleri ile bağlantı kurmasını sağlar. Bu şekilde ilişki kurarak veri tekrarını ya da veri tutarsızlığını önlemiş oluruz.

İlişkisel veri tabanındaki tablolar aslında tek bir konu için oluşturulmuştur. Örneğin; Bu ayki ürünlerimizin hangi tedarikçiden alındığını tek bir rapor da görmek isteyelim. İlk olarak ürün ve tedarikçi tablolarımızı ayrı ayrı oluştururuz ve daha sonra ise bu tablolar arasında istediğimiz rapor ile ilgili olan özelliklerimiz arasında ilişki kurarak iki tablomuzdan istediğimiz raporu çekmiş oluruz. Örneğimizde de fark ettiğimiz  gibi iki ayrı tablomuz var ve bu tablolar tek bir konu için oluşturulmuştur.

İlişkisel veri tabanları da geleneksel veri tabanları gibi bazı kavramlara sahiptir.Tabloda her satır bir kayıttan, her sütun ise birçok özellikteki alanlardan oluşmaktadır. Bunları tablo üzerinde gösterelim;

Tablomuzda da fark ettiğimiz gibi veri tabanlarımız birçok alandan ve kayıttan oluşmaktadır. Her kayıt farklı niteliklere sahiptir.

Şimdiye kadar ilişkisel veri tabanımız nedir, nelerden oluşur bunlardan bahsettik. Şimdi de tablolar arası ilişkiyi nasıl kurabileceğimizden bahsedelim.

İlişkisel veri tabanlarında her tablo kayıt, alan, nitelik, nesne kavramlarının dışında birincil anahtarlara da sahiptir. Birincil anahtarlar (Primary Key) bir tabloyu diğer tablolardan ayırmamıza yardımcı olur. Tablolarımızda birincil anahtar eşsiz değerlere atanır. Birincil anahtar ile tablolarımızdaki değerlerin düzenli ve bulunur olmasını sağlarız.

Örneğin; öğrencilerin hangi dersten hangi notu alacağını bir raporda görmek isteyelim, öğrenci ve ders tabloları oluşturalım. Öğrenci tablomuzda ÖĞRENCİ_NO, İSİM, SOYİSİM ve SINIF verilerimizin olduğunu varsayalım. Öğrenci tablomuzdaki verilere bakacak olursak bu verilerimizde bizim birincil anahtarımız ÖĞRENCİ_NO olmalıdır, çünkü her öğrencinin ayrı ve kendine özel numarası vardır. Bir öğrencinin numarası başka bir öğrenci de olamaz. Ders tablomuzda ise DERS_KODU ,DERS_ADI, DERS_SAATİ verilerimizin olduğunu düşünelim. Buradaki birincil anahtarımız da DERS_KODU olacaktır,  çünkü her dersin ayrı bir kodu vardır ve birden fazla derse o kod verilemez.

Tablolarımızda birincil anahtar hangi verilerimiz olmalı öğrenmiş olduk, şimdi de iki ayrı tablodan istediğimiz verilere sahip tabloyu nasıl oluşturabiliriz ona bakalım.

Örneğimizin başında öğrencilerin hangi dersten hangi notu alacağını bir raporda görmek istediğimizi söylemiştik ve öğrenci, ders tablolarımızı oluşturmuştuk. Öğrencilerin hangi dersten kaç aldığını bulabilmek için her iki tablo arasında bir ilişki kurmalıyız. Bu ilişkiyi de İkincil anahtar ile kurabiliriz.

İkincil anahtarlar(Foreign key) ilişki kurmak istediğimiz tablolardaki primary key’in farklı bir tabloda veri olarak kullanılmasını sağlar. İkincil anahtarlar sadece başka bir tabloda birincil anahtar olarak atanan verilerden oluşur. İkincil anahtarlar sayesinde veri tekrarını önlemiş oluruz. Bir tablomuzda ki önemli verileri diğer tablomuzda yeniden yazarak karışıklığa neden olmak yerine ilişkisel veri tabanında ikincil anahtarları kullanarak belirli bir düzen ve ahenkte verilerimizi saklamış oluruz.

Bu yazımda ilişkisel veri tabanı yönetim sisteminde neler olmalı bunlardan bahsettim, diğer yazımda ise ilişkisel veri tabanı yönetim sistemi ilişki çeşitlerinden bahsedeceğim.

Sorularınız için bana  hgencer@industryolog.com adresinden ulaşabilirsiniz.

Sağlıcakla kalın 😊