Birincil anahtar ile Benzersiz anahtar arasındaki fark

Anonim

Birincil anahtar vs Benzersiz anahtar

Bir veritabanında bir satır veya bir dizi kümeyi tanımlamak veya erişmek için kullanılabilen bir sütun veya bir sütun kümesi bir anahtar olarak anılır. Eşsiz anahtar, ilişkisel veritabanları bağlamında bir tablodaki bir satırı benzersiz şekilde tanımlayan bir anahtartır. Benzersiz bir anahtar, tek bir sütundan veya bir dizi sütundan oluşur. Birincil anahtar, tablodaki satırları benzersiz şekilde tanımlayan sütunların birleşimidir. Ancak benzersiz anahtarda özel bir durum olduğu düşünülmektedir.

Eşsiz Anahtar nedir?

Daha önce de belirtildiği gibi benzersiz anahtar, tablodaki bir satırı benzersiz şekilde tanımlayan tek bir sütun veya sütun kümesidir. Eşsiz bir anahtar, hiçbir iki değerin eşit olmadığı şekilde sınırlandırılmıştır. Önemli bir özellik, benzersiz anahtarların NOT NULL kısıtlamasını zorlamamasıdır. NULL, bir değer eksikliğini temsil ettiğinden, iki sütun bir sütunda NULL olduğunda, değerlerin eşit olduğu anlamına gelmez. Benzersiz bir anahtar olarak tanımlanan sütun, o sütunda yalnızca tek bir NULL değeri sağlar. Sonra bu belirli satırı benzersiz şekilde tanımlamak için kullanılabilir. Örneğin, öğrenci bilgilerini içeren bir tabloda, öğrenci kimliği benzersiz bir anahtar olarak tanımlanabilir. Hiç kimse aynı kimliği alamadığı için tek bir öğrenciyi benzersiz olarak tanımlar. Böylece, öğrenci kimliği sütunu benzersiz bir anahtarın tüm özelliklerini karşılar. Bir veritabanının tasarımına bağlı olarak, bir tabloda birden fazla benzersiz anahtara sahip olabilir.

Birincil Anahtar Nedir?

Birincil anahtar, aynı zamanda, bir ilişkisel veritabanı tablosundaki bir satırı benzersiz şekilde tanımlayan bir sütun veya sütunların birleşimidir. Bir tablonun en fazla bir birincil anahtarı olabilir. Birincil anahtar, örtük NOT NULL kısıtlamasını zorlar. Yani, birincil anahtar olarak tanımlanan bir sütun içinde NULL değerleri olamaz. Birincil anahtarda tabloda, sosyal güvenlik numarası gibi benzersiz olduğu garanti edilen normal bir nitelik olabilir veya Microsoft SQL Server'daki bir Küresel Benzersiz Tanımlayıcı (GUID) gibi veritabanı yönetim sistemi tarafından üretilen benzersiz bir değer olabilir. Birincil anahtarlar, ANSI SQL Standardındaki PRIMARY KEY kısıtlaması aracılığıyla tanımlanır. Tablonun oluşturulması sırasında birincil anahtar da tanımlanabilir. SQL, birincil anahtarın bir veya daha çok sütundan oluşmasını sağlar ve birincil anahtarda bulunan her sütun örtük olarak NOT NULL olarak tanımlanır. Fakat bazı veritabanı yönetim sistemleri birincil anahtar sütunlarını açıkça NOT NULL yapmayı gerektirir.

Birincil anahtar ile Benzersiz anahtar arasındaki fark

Hem birincil anahtar hem de benzersiz anahtar, tablodaki bir satırı benzersiz şekilde tanımlayabilen bir veya daha fazla sütun olmasına rağmen, bazı önemli farklılıklara sahiptir. En önemlisi, bir tabloda yalnızca birincil anahtara sahip olabilir, ancak birden fazla benzersiz anahtara sahip olabilir.Birincil anahtar benzersiz anahtarın özel bir durumu olarak düşünülebilir. Benzersiz anahtarın bu kısıtlamaya sahip olmamasına karşın, birincil anahtarların örtük bir NOT NULL kısıtlaması olması bir başka farktır. Bu nedenle, benzersiz anahtar sütunları NULL değerleri içerebilir veya içermeyebilir, ancak birincil anahtar sütunları NULL değerleri içeremez.