Veritabanı Yönetim Sistemi Anahtarları: Aday, Birincil, Üst ve Yabancı Türler
⚡ Akıllı Özet
Veritabanı yönetim sistemlerinde (DBMS) anahtarlar, bir tablodaki bir satırı benzersiz şekilde tanımlayan ve tablolar arasında ilişkiler kuran özelliklerdir. Süper ve birincil anahtardan yabancı ve vekil anahtara kadar sekiz anahtar türü, ilişkisel bir veritabanında kimlik ve bütünlüğü sağlar.

Veritabanı Yönetim Sistemlerinde Anahtarlar Nelerdir?
Veritabanı Yönetim Sistemlerinde Anahtarlar Anahtarlar, bir ilişkideki (tablodaki) bir satırı (kayıtı) tanımlamanıza yardımcı olan bir özellik veya özellik kümesidir. İki tablo arasındaki ilişkiyi bulmanızı sağlarlar. Anahtarlar, bir veya daha fazla sütunun birleşimiyle bir tablodaki bir satırı benzersiz bir şekilde tanımlamanıza yardımcı olur ve ayrıca tabloda benzersiz bir kaydı bulmak için de faydalıdır.
Örnek:
| Çalışan kimliği | İsim | Soyadı |
|---|---|---|
| 11 | Andrew | Johnson |
| 22 | Tom | Ahşap |
| 33 | Alex | Dinç |
Yukarıdaki örnekte, Çalışan Kimliği (Employee ID) birincil anahtardır çünkü bir çalışan kaydını benzersiz şekilde tanımlar. Bu tabloda, başka hiçbir çalışanın aynı çalışan kimliğine sahip olması mümkün değildir.
Anahtara Neden İhtiyacımız Var?
Veritabanı yönetim sistemlerinde anahtar kullanmanın bazı nedenleri şunlardır:
- Anahtarlar, bir tablodaki herhangi bir veri satırını tanımlamanıza yardımcı olur. Gerçek dünya uygulamalarında, bir tablo binlerce kayıt içerebilir ve kayıtlar tekrarlanabilir. Anahtarlar, bu zorluklara rağmen bir tablo kaydını benzersiz bir şekilde tanımlayabilmenizi sağlar.
- Bu araçlar, tablolar arasındaki ilişkileri kurmanıza ve belirlemenize olanak tanır.
- İlişkide kimliğinizi ve dürüstlüğünüzü korumanıza yardımcı olurlar.
Veritabanı Yönetim Sistemlerinde Anahtar Türleri
Veritabanı yönetim sistemlerinde (DBMS) temel olarak sekiz farklı anahtar türü vardır ve her anahtarın kendine özgü bir işlevi bulunur:
- Süper Anahtar
- Birincil anahtar
- Aday Anahtarı
- Alternatif Anahtar
- Yabancı anahtar
- Bileşik Anahtar
- Kompozit Anahtar
- Vekil anahtarı
Aşağıdaki tablo, her biri ayrıntılı olarak açıklanmadan önce sekiz maddeyi de bir bakışta özetlemektedir.
| anahtar | Tek satırda | Benzersiz? |
|---|---|---|
| Süper Anahtar | Bir satırı tanımlayan herhangi bir özellik kümesi, ek özellikler de dahil. | Evet |
| Aday Anahtarı | Minimum düzeyde süper anahtar, gereksiz özellik yok. | Evet |
| Birincil anahtar | Seçilen aday anahtar, boş değil. | Evet |
| Alternatif Anahtar | Birincil olarak seçilmeyen aday anahtar. | Evet |
| Yabancı anahtar | Başka bir tablodaki birincil anahtara referans verir. | Yok hayır |
| Bileşik Anahtar | İki veya daha fazla özellik, her biri muhtemelen benzersiz değil | kombine |
| Kompozit Anahtar | Benzersizlik için iki veya daha fazla sütun birleştirildi. | kombine |
| Vekil anahtarı | Oluşturulan yapay bir tanımlayıcı | Evet |
Süper Anahtar Nedir?
Süper anahtar, bir tablodaki satırları tanımlayan tek veya birden fazla anahtardan oluşan bir gruptur. Süper anahtar, benzersiz tanımlama için gerekli olmayan ek özelliklere de sahip olabilir.
Örnek:
| EmpSSN | EmpNum | İş adı |
|---|---|---|
| 9812345098 | AB05 | Gösterilen |
| 9876512345 | AB06 | Roslyn |
| 199937890 | AB07 | James |
Yukarıdaki örnekte, EmpSSN ve EmpNum süper anahtarlardır.
Birincil Anahtar nedir?
BİRİNCİL ANAHTAR in DBMS Birincil anahtar, bir tablodaki her satırı benzersiz şekilde tanımlayan bir sütun veya sütun grubudur. Birincil anahtar yinelenemez, yani aynı değer tabloda birden fazla kez görünemez. Bir tabloda birden fazla birincil anahtar olamaz.
Birincil Anahtar Tanımlama Kuralları
- İki satır aynı birincil anahtar değerine sahip olamaz.
- Her satırın birincil anahtar değeri olmalıdır.
- Birincil anahtar alanı boş olamaz.
- Herhangi bir yabancı anahtar bu birincil anahtara başvuruyorsa, birincil anahtar sütunundaki değer hiçbir zaman değiştirilemez veya güncellenemez.
Örnek: Aşağıdaki örnekte, StudID Birincil anahtardır.
| StudID | Rulo Hayır | İsim | Soyadı | E-posta |
|---|---|---|---|---|
| 1 | 11 | Tom | Fiyat | abc@gmail.com |
| 2 | 12 | Nick | Wright | xyz@gmail.com |
| 3 | 13 | Dana | Natan | mno@yahoo.com |
Alternatif Anahtar Nedir?
ALTERNATİF ANAHTAR Birincil anahtar, bir tablodaki her satırı benzersiz şekilde tanımlayan bir sütun veya sütun grubudur. Bir tabloda birden fazla birincil anahtar seçeneği olabilir, ancak yalnızca biri birincil anahtar olarak ayarlanabilir. Birincil anahtar olmayan tüm anahtarlara alternatif anahtarlar denir.
Örnek: Bu tabloda, StudID, Roll No ve Email birincil anahtar olmaya uygundur. Ancak StudID birincil anahtar olduğundan, Roll No ve Email alternatif anahtarlar haline gelir.
| StudID | Rulo Hayır | İsim | Soyadı | E-posta |
|---|---|---|---|---|
| 1 | 11 | Tom | Fiyat | abc@gmail.com |
| 2 | 12 | Nick | Wright | xyz@gmail.com |
| 3 | 13 | Dana | Natan | mno@yahoo.com |
Aday Anahtarı nedir?
ADAY ANAHTARI Bir tablodaki kayıtları benzersiz şekilde tanımlayan bir dizi özniteliktir. Aday anahtar, tekrarlanan öznitelikleri olmayan bir süper anahtardır. Birincil anahtar, aday anahtarlar arasından seçilmelidir. Her tabloda en az bir aday anahtar bulunmalıdır ve bir tabloda birden fazla aday anahtar olabilir, ancak yalnızca bir birincil anahtar olabilir.
Aday anahtarın özellikleri:
- Benzersiz değerler içermelidir.
- Bir aday anahtarın birden fazla özelliği olabilir.
- Boş değer içermemelidir.
- Benzersizliği sağlamak için gereken minimum alanları içermelidir.
- Tablodaki her kaydı benzersiz bir şekilde tanımlar.
Örnek: Aşağıdaki tabloda, StudID, Roll No ve Email, bir öğrenci kaydını benzersiz bir şekilde tanımlamamıza yardımcı olan aday anahtarlardır. Bunların süper anahtarlar ve birincil anahtarlarla ilişkisi, anlamanın yaygın bir yoludur. işlevsel bağımlılık.
| StudID | Rulo Hayır | İsim | Soyadı | E-posta |
|---|---|---|---|---|
| 1 | 11 | Tom | Fiyat | abc@gmail.com |
| 2 | 12 | Nick | Wright | xyz@gmail.com |
| 3 | 13 | Dana | Natan | mno@yahoo.com |

Yabancı Anahtar nedir?
YABANCI ANAHTAR Yabancı anahtar, iki tablo arasında ilişki kuran bir sütundur. Yabancı anahtarın amacı, veri bütünlüğünü korumak ve bir varlığın iki farklı örneği arasında gezinmeyi sağlamaktır. Bir tablonun birincil anahtarını referans aldığı için iki tablo arasında çapraz referans görevi görür.
Örnek:
| BölümüCode | DepartmanAdı |
|---|---|
| 001 | Bilim |
| 002 | İngilizce |
| 005 | Bilgisayar |
| Öğretmen Kimliği | Fname | İsim |
|---|---|---|
| B002 | David | Warner |
| B017 | Sara | Joseph |
| B009 | mikrofon | Brunton |
Bu örnekte, bir okulda Öğretmen ve Bölüm olmak üzere iki tablo bulunmaktadır. Mevcut haliyle, hangi öğretmenin hangi bölümde çalıştığını görmenin bir yolu yoktur.
Dept yabancı anahtarını ekleyerekCode Öğretmen tablosuna giderek, iki tablo arasında bir ilişki kurabiliriz.
| Öğretmen Kimliği | BölümüCode | Fname | İsim |
|---|---|---|---|
| B002 | 002 | David | Warner |
| B017 | 002 | Sara | Joseph |
| B009 | 001 | mikrofon | Brunton |
Bu kavram aynı zamanda referans bütünlüğü olarak da bilinir.
Bileşik Anahtar Nedir?
BİLEŞİK ANAHTAR Bir kayıtın benzersiz bir şekilde tanınmasını sağlayan iki veya daha fazla özniteliğe sahiptir. Her sütun tek başına veritabanında benzersiz olmayabilir. Ancak, bir araya geldiklerinde sütunlar benzersiz hale gelir. Bileşik anahtarın amacı, tablodaki her kaydı benzersiz bir şekilde tanımlamaktır.
Örnek:
| Sipariş No | Ürün kimliği | Ürün adı | Adet |
|---|---|---|---|
| B005 | JAP102459 | Fare | 5 |
| B005 | DKT321573 | USB | 10 |
| B005 | Aman Tanrım446789 | LCD Monitör | 20 |
| B004 | DKT321573 | USB | 15 |
| B002 | Aman Tanrım446789 | Lazer yazıcı | 3 |
Bu örnekte, OrderNo ve ProductID'nin her biri ayrı ayrı birincil anahtar olamaz, çünkü ikisi de bir kaydı benzersiz şekilde tanımlamaz. Bununla birlikte, OrderNo ve ProductID'den oluşan bileşik bir anahtar, her kaydı benzersiz şekilde tanımlar.
Bileşik Anahtar Nedir?
KOMPOZİT ANAHTAR İki veya daha fazla sütunun birleşimi, bir tablodaki satırları benzersiz şekilde tanımlar. Sütunların birleşimi benzersizliği garanti eder, ancak tek tek benzersizlik garanti edilmez. Bu nedenle, bir tablodaki kayıtları benzersiz şekilde tanımlamak için bir araya getirilirler.
Birleşik anahtar ile bileşik anahtar arasındaki fark, birleşik anahtarın herhangi bir parçasının yabancı anahtar olabilmesidir, ancak bileşik anahtar yabancı anahtarın bir parçası olabilir veya olmayabilir.
Yedek Anahtar Nedir?
YEDEK ANAHTAR Yapay anahtar, her kaydı benzersiz bir şekilde tanımlamayı amaçlayan bir anahtardır. Bu tür anahtar benzersizdir çünkü doğal birincil anahtarınız olmadığında oluşturulur. Vekil anahtarlar tablodaki verilere herhangi bir anlam katmaz ve genellikle kayıt eklenmeden hemen önce oluşturulan bir tamsayıdır.
| Fname | Soyadı | Başlama zamanı | Bitiş Zamanı |
|---|---|---|---|
| Anne | Demirci | 09:00 | 18:00 |
| kriko | Francis | 08:00 | 17:00 |
| Anna | McLean | 11:00 | 20:00 |
| Gösterilen | William | 14:00 | 23:00 |
Yukarıdaki örnek, farklı çalışanların vardiya saatlerini göstermektedir. Burada, her çalışanı benzersiz bir şekilde tanımlamak için bir vekil anahtar gereklidir. Vekil anahtarlar SQL Şu durumlarda kullanılırlar:
- Hiçbir özellik birincil anahtar parametresine sahip değil.
- Birincil anahtar çok büyük veya karmaşık.
Birincil Anahtar ile Yabancı Anahtar Arasındaki Fark
Aşağıda birincil anahtar ve yabancı anahtar arasındaki temel farklar verilmiştir:
| Birincil anahtar | Yabancı anahtar |
|---|---|
| Tablodaki bir kaydı benzersiz şekilde tanımlamanıza yardımcı olur. | Başka bir tablonun birincil anahtarı olan tablodaki bir alandır. |
| Birincil anahtar asla boş (null) değerleri kabul etmez. | Bir yabancı anahtar birden fazla boş değer kabul edebilir. |
| Birincil anahtar kümelenmiş bir indekstir ve tablodaki veriler fiziksel olarak kümelenmiş indeksin sırasına göre düzenlenmiştir. | Yabancı anahtar, kümelenmiş veya kümelenmemiş bir dizini otomatik olarak oluşturamaz. Bunu manuel olarak oluşturabilirsiniz. |
| Bir tabloda tek bir birincil anahtar olabilir. | Bir tabloda birden fazla yabancı anahtarınız olabilir. |
