İkinci normal form

İkinci normal form (2NF), veritabanı normalleştirmesinde kullanılan normal bir formdur. 2NF orijinal olarak 1971'de E. F. Codd tarafından tanımlanmıştır.

Aşağıdaki iki gerekliliği yerine getiren bir ilişki ikinci normal biçimdedir:

 1NF kriterlerini sağlamalı. 
 İlişkinin herhangi bir aday anahtarı, herhangi bir alt kümesine işlevsel olarak bağımlı olan asal olmayan herhangi bir niteliğe sahip olmamalıdır. Bir ilişkinin asal olmayan bir niteliği, ilişkinin herhangi bir aday anahtarının parçası olmayan bir niteliktir.

Basitçe ifade etmek gerekirse, bir ilişki 1NF içindeyse ve ilişkinin asal olmayan her özniteliği her aday anahtarın tamamına bağlıysa 2NF'dedir. Burada, asal olmayan özniteliklerin bağımlılığına herhangi bir kısıtlama getirilmediği unutulmamalıdır. Bu, üçüncü normal formda ele alınan bir konudur.

2NF ve aday anahtarlar 
Herhangi bir aday anahtarın bir kısmına işlevsel bağımlılık, 2NF'nin ihlalidir. Birincil anahtara ek olarak, ilişki başka aday anahtarlar içerebilir; Asal olmayan özniteliklerin bu aday anahtarlardan herhangi birine kısmi anahtar bağımlılığı olmadığının belirlenmesi gereklidir.

Aşağıdaki ilişki 2NF koşullarını sağlamaz:

 {Üretici ülke} işlevsel olarak {Üretici firmaya}'ya bağlıdır 
 {Üretici ülke} bir aday anahtarın parçası olmadığı için asal olmayan bir özelliktir. 
 {Üretici firma}, {Üretici firma, Model} aday anahtarının bir alt kümesidir 
 Bu nedenle, {Üretici ülke}, işlevsel olarak aday anahtarın bir parçasına bağımlı olan ve 2NF'yi ihlal eden birincil olmayan bir özelliktir.

Tasarımcı birincil anahtarı {Model tam adı} olarak belirtmiş olsa bile, diğer aday anahtarlar nedeniyle ilişki 2NF'de değildir. {Üretici firma, Model} de bir aday anahtardır ve Üretici ülke bunun uygun bir alt kümesine bağlıdır: Üretici firmaya. Tasarımın 2NF'e uygun hale getirilmesi için iki ilişkiye sahip olması gerekir:

Ayrıca bakınız 
 Birinci normal form
 Üçüncü normal form
 Boyce–Codd normal formu

Kaynakça

Dış bağlantılar 

 Mike Chapple Tarafından Veritabanı Normalleştirme Temelleri  (About.com) 
 Mike Hillyer tarafından Veritabanı Normalizasyonuna Giriş . 
 Fred Coulson tarafından ilk 3 normal form üzerine bir eğitim 
 Microsoft tarafından veritabanı normalleştirme temellerinin açıklaması

Veritabanları
Veri modelleme
İncelenmemiş çeviri içeren sayfalar