Skip to main content

İkinci Normal Formda (2NF) Veritabanının Kurulması

Veri Tabanı Normalizasyon (Nomal Form'lar) Ek Video (Mayıs Ayı 2024)

Veri Tabanı Normalizasyon (Nomal Form'lar) Ek Video (Mayıs Ayı 2024)
Anonim

Bir veritabanı tablosunu normalleştirmenin çeşitli yönlerine baktık. İlk olarak, veritabanı normalleştirmesinin temel prensiplerini tartıştık. Son kez, ilk normal formun (1NF) ortaya koyduğu temel gereksinimleri araştırdık. Şimdi, yolculuğumuza devam edelim ve ikinci normal formun (2NF) ilkelerini ele alalım.

2NF Genel Gereksinimleri

  • Bir tablonun birden çok satırına uygulanan veri alt kümelerini kaldırın ve bunları ayrı tablolara yerleştirin.
  • Yabancı anahtarların kullanımıyla bu yeni tablolar ve öncülleri arasında ilişkiler oluşturun.

Bu kurallar basit bir ifadeyle özetlenebilir: 2NF bir tablodaki gereksiz veri miktarını çıkartarak, yeni tabloya yerleştirerek ve bu tablolar arasında ilişkiler oluşturmaya çalışır.

Bir örneğe bakalım. Müşteri bilgilerini bir veritabanında saklayan bir çevrimiçi mağaza düşünün. Aşağıdaki öğelerle Müşteriler adında tek bir tablo olabilir:

  • CustNum
  • İsim
  • Soyadı
  • Adres
  • Kent
  • Belirtmek, bildirmek
  • Posta

Bu tabloya kısa bir bakış az miktarda gereksiz veriyi ortaya çıkarmaktadır. "Sea Cliff, NY 11579" ve "Miami, FL 33157" girişlerini iki kez saklıyoruz. Şimdi, bu bizim basit örneğimizde çok fazla eklenmiş depolama alanı gibi görünmeyebilir, ancak bizim masada binlerce satır varsa, boş alanı hayal edin. Ayrıca, Sea Cliff'in posta kodu değişecek olursa, bu değişikliği veritabanında birçok yerde yapmamız gerekecek.

2NF uyumlu bir veritabanı yapısında, bu gereksiz bilgi ayıklanır ve ayrı bir tabloda saklanır. Yeni tablomuz (ZIP’leri diyelim) aşağıdaki alanlara sahip olabilir:

  • Posta
  • Kent
  • Belirtmek, bildirmek

Süper verimli olmak istiyorsak, bu tabloyu önceden bile doldurabiliriz - postane tüm geçerli posta kodlarının ve şehir / eyalet ilişkilerinin bir dizinini sağlar. Şüphesiz, bu tip veritabanının kullanıldığı bir durumla karşılaştın. Siparişi alan bir kişi, önce posta kodunuzu sormuş olabilir ve daha sonra aradığınız şehri ve eyaleti biliyor olabilir. Bu tip düzenleme, operatör hatasını azaltır ve verimliliği arttırır.

Artık yinelenen verileri Müşteriler tablosundan çıkardık, ikinci normal formun ilk kuralını yerine getirdik. İki tabloyu birbirine bağlamak için hala yabancı bir anahtar kullanmamız gerekiyor. Bu ilişkiyi oluşturmak için ZIP kodunu (ZIP tablosundan birincil anahtar) kullanacağız. İşte yeni Müşteriler masamız:

  • CustNum
  • İsim
  • Soyadı
  • Adres
  • Posta

Şimdi veritabanında saklanan gereksiz bilgi miktarını en aza indirdik ve yapımız ikinci normal formda.