BCNF, fazlalıkları en aza indirir ve veri bütünlüğünü artırır
Boyce-Codd Normal Formunun (BCNF) amacı, veritabanı normalleştirmesi elde etmek için ilişkisel veritabanının sütunlarını ve tablolarını düzenleyerek veri bütünlüğünü arttırmaktır. Veritabanı normalleştirmesi , tablolar arasında yerleşik ilişkiler olduğunda ve tablolar veritabanını daha esnek hale getirmek ve verileri korumak için kurallar tanımladığında oluşur.
Veritabanı normalleştirmesinin amacı, gereksiz verileri ortadan kaldırmak ve veri bağımlılıklarının anlamlı olmasını sağlamaktır.
Aynı veriler birden fazla tabloda saklanmadığında ve yalnızca ilgili veriler bir tabloda depolandığında bir veritabanı normalleştirilir.
Boyce-Codd Normal Formunun Kökeni
Bir dizi yönergenin ardından veritabanlarının normalleştirildiğinden emin olun. Bu kılavuzlar normal formlar olarak adlandırılır ve bir ila beş arasında numaralandırılır. İlişkisel veritabanı, ilk üç formu karşılarsa normalleştirilmiş olarak tanımlanır: 1NF, 2NF ve 3NF.
BCNF, 1974 yılında Raymond Boyce ve Edgar Codd tarafından üçüncü normal forma veya 3NF'ye bir uzantı olarak yaratıldı. Adamlar, hesaplama zamanını azaltmak amacıyla fazlalıkları minimalize eden veritabanı şemaları oluşturmak için çalışıyorlardı. Üçüncü normal form, birinci ve ikinci normal formlardaki yönergeleri karşılama ek olarak birincil anahtara bağlı olmayan sütunları kaldırır. Bazen 3.5NF olarak adlandırılan BCNF, 3NF'nin tüm gereksinimlerini karşılar ve aday anahtarların bir tabloda diğer özniteliklere bağımlı olmaması gerekir.
BCNF'nin oluşturulması sırasında, Boyce, Codd'ın ilişkisel modelini kullanarak veri alımını geliştiren Yapılandırılmış İngilizce Sorgu Dili'nin (SQL) temel geliştiricilerinden biriydi. Bu modelde, Codd, veritabanlarının yapısal karmaşıklığının azaltılabileceğini, yani sorguların daha güçlü ve esnek olabileceğini öne sürdü.
İlişkisel veritabanı analizlerini kullanan Codd, 1NF, 2NF ve 3NF yönergelerini tanımladı. BCNF'yi tanımlamak için Boyce ile birlikte çalıştı.
Aday Tuşları ve BCNF
Aday anahtar, veritabanında benzersiz bir anahtar oluşturan bir tablodaki sütun veya sütunların birleşimidir. Özniteliklerin kombinasyonu, herhangi bir veriye başvurmadan bir veri tabanı kaydını tanımlamak için kullanılabilir. Her tablo, herhangi biri birincil anahtar olarak nitelendirilebilecek birden fazla aday anahtar içerebilir. Bir tablo sadece bir birincil anahtar içerir.
Aday anahtarların benzersiz olması gerekir.
Her belirleyici bir aday anahtarsa, BCNF'de bir ilişki vardır. Çalışan bilgilerini saklayan ve
Bu tabloda,
Çalışan kimliği | İsim | Soyadı | Başlık |
13133 | Emily | demirci | yönetici |
13134 | Jim | demirci | ortak |
13135 | Emily | Jones | ortak |
Bu veritabanı için aday anahtar