SQL_4: Anahtarlar *

En önemli konulardan birine değiniyoruz. Sql de verilerin ulaşımı, kullanımı kolaylaştırmak adına kayıtlardaki farklılıkları ve nitelikleri gösteren belirleyicilere anahtarlar(keys) denir.

Genel olarak kullanım amacı: tablodaki kayıtları birbirinden ayırt edebilmek için tablo içindeki alanlara belirli anahtarlar atayarak birçok işlemi yapabilmemize olanak tanır.

3 çeşit anahtar(keys) mevcuttur. Bunlar:

  1. Primary Key -PK- (Birincil anahtar): Bir tablo içerisindeki kayıtları birbirinden ayırt etmek için kullanırız. Birincil anahtar olan bir veri aynı tablo içerisinde tekrarlanamaz. Ve asla Primary Key yapılmış alanda veri girişlerinde boş geçilemez, yani NULL değeri alamaz. Tek bir alan birincil anahtar özelliği olabileceği gibi bazı tablolarda birden fazla alanın birleşmesiyle birincil anahtar oluşabilir. Bu durumda da bu birleşen alanlara(PK yapılmış alanlara) birleşik alan deriz.
  2. Foreign Key -FK- (Referans, Yabancıl Anahtar): Tablodaki bir alanı başka tablodaki bir alanla ilikilendirme olayı. Farklı tablolar arasında yapılan bu ilişkilendirme ile referans anahtar olarak tanımlanmış alana sadece ilişkilendirdiği tablonun alanındaki veriler eklenebilir. Bu sayede veri bütünlüğü saplanmış olunur.
  3. Unique Key -UK- (Tekil Anahtar): Tablonun tekil anahtar olarak tanımlanmış bir alanına aynı değer sadece bir kez girilebilir. (PK’ da olduğu gibi) Birincil anahtardan farkı: tabloda bu alana ait sadece bir kayıt NULL değeri alabilir. (PK’ da böyle bir durum olası değildir.)

Bu konuyu örnekle beslemek istiyorum çünkü ilerleyen zamanlarda veritabanı tasarlarken en önemli etmenlerden birisi bu anlattığım iki başlık olacak arkadaşlar.

PK ile FK arasındaki ilişkiyi anlatan bir örnek:

Diyelim ki öğrenci tablom var. Bu tabloda öğrenci no, adı, soyadı, bölümü gibi veriler var. Başka bir tablo da öğrenci not bilgileri tutulduğunu varsayalım. Bu öğrenci not tablosunda da  öğrenci no, dersNo, ders adı vb. gibi bilgiler var. Buraya kadar kısımda anlatılan olayda: öğrenci tablosundaki öğrenci no (PK) ile öğrenci notları tablosundaki öğrenci no (FK) olacak şekilde referans edilir. Eğer bir öğrenci kaydı öğrenci tablosunda yok ise öğrenci not bilgileri tablosunda ne işi var? Gibi veri tutarlılığı ve veri bütünlüğü sağlaması açısından bu örnekteki ilişki mantığı bize normalizasyon kazandıracaktır.

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir