Birincil anahtar, bir tablodaki her kaydı benzersiz şekilde tanımlar. İki satır aynı birincil anahtar değerini paylaşamaz. Anahtar boş olamaz. Benzersiz ve sabit olmalıdır. Bir müşteri tablosunda birincil anahtar müşteri kimliği olabilir. Bir sipariş tablosunda ise sipariş numarası olabilir. Birincil anahtar, kayıt için bir dayanak noktasıdır. Diğer tablolar, yabancı anahtarlar aracılığıyla ona referans verir. Birincil anahtar olmadan, kayıtları güvenilir bir şekilde tanımlamak, güncellemek veya silmek zordur.
Birincil anahtarlar iki biçimde gelir. Doğal anahtarlar, verinin kendisinden türetilir. Sosyal Güvenlik numarası, e-posta adresi veya ürün SKU'su gibi. Anlamlıdırlar ancak değişebilirler. İnsanlar e-posta adreslerini değiştirir. Şirketler ürün kodlarını değiştirir. Vekil anahtarlar sistem tarafından oluşturulur. Otomatik artan tamsayılar veya UUID'ler. Veritabanı dışında hiçbir anlamları yoktur. Asla değişmezler. Vekil anahtarlar genellikle tercih edilir çünkü anlamdan ziyade istikrar daha önemlidir. Değişen bir doğal anahtar, onu referans alan her tabloda güncellemeler yapılmasını zorunlu kılar. Vekil anahtar ise sonsuza dek aynı kalır. Bazı tablolar, iki veya daha fazla sütundan oluşan bileşik birincil anahtarlar kullanır. Bir sipariş satır öğesi, sipariş kimliği ve satır numarasının birleşimiyle tanımlanabilir. Bileşik anahtarlar çalışır ancak birleştirmeleri ve yabancı anahtar referanslarını karmaşıklaştırır. Tek bir vekil anahtar daha basittir.
Birincil anahtar özellikleri
- Benzersiz — tekrar eden kopya yok
- Boş değil — her zaman bir değeri vardır.
- İstikrarlı — zaman içinde değişmez.
- Tek veya bileşik — tek sütun veya birkaç sütun
- İndekslendi — hızlı aramalar için otomatik olarak
Birincil anahtar bir kimliktir. Bu kaydın bu kayıt olduğunu ve başka bir kayıt olmadığını belirtir. Onsuz, verinin bir dayanağı olmaz.
Comments
No comments yet. Be the first to share a thought.
Leave a comment