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.

  • 🗝️ Temel Amaç: Bir anahtar, benzersiz bir satırı tanımlar ve ilgili tabloları birbirine bağlayarak verilerin tutarlı kalmasını sağlar.
  • 🔝 Süper Anahtar: Minimum gereksinimlerin ötesinde ek özellikler de içerebilen, satırları tanımlayan herhangi bir özellik kümesi.
  • Birincil anahtar: Seçilen aday anahtar, asla boş değer içermez ve asla tekrarlanmaz, tablo başına bir tanedir.
  • 🎯 Aday Anahtarı: Gereksiz öznitelik içermeyen, minimal bir süper anahtar; birincil anahtar bunlardan seçilir.
  • 🔁 Alternatif Anahtar: Birincil anahtar olarak seçilmeyen herhangi bir aday anahtar.
  • 🔗 Yabancı anahtar: Referans bütünlüğünü sağlamak için başka bir tablonun birincil anahtarına referans veren bir sütun.
  • 🧩 Bileşik ve Vekil: Bileşik anahtarlar, benzersizlik sağlamak için sütunları birleştirir; vekil anahtar ise oluşturulan bir yedek değerdir.

DBMS Anahtarları Aday Süper Birincil

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:

  1. Süper Anahtar
  2. Birincil anahtar
  3. Aday Anahtarı
  4. Alternatif Anahtar
  5. Yabancı anahtar
  6. Bileşik Anahtar
  7. Kompozit Anahtar
  8. 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
DBMS'de Aday Anahtarı
DBMS'de Aday Anahtarı

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.

SSS

Her aday anahtar, bir satırı benzersiz şekilde tanımlayabilir. Birincil anahtar, tasarımcının seçtiği aday anahtardır; geri kalan aday anahtarlar ise alternatif anahtarlar olur.

Her ikisi de benzersizlik için sütunları birleştirir. Bileşik anahtarda her sütun kendi başına bir yabancı anahtardır, oysa bileşik anahtar, yabancı anahtar olması gerekmeyen iki veya daha fazla özniteliği birleştirir.

Doğal özniteliklerden hiçbiri güvenilir bir şekilde benzersiz olmadığında veya doğal anahtar büyük olduğunda ya da değişebileceğinde vekil anahtar kullanın. Oluşturulan tamsayı sabit kalır ve birleştirmeleri basitleştirir.

Evet. Yapay zeka, sütunları benzersizlik, boş değer oranı ve istikrar açısından profillendirerek aday anahtarları belirleyebilir ve birincil anahtar veya vekil anahtar önerebilir; nihai seçim ise tasarımcıya bırakılır.

Evet. Birincil anahtarın aksine, yabancı anahtar boş değer (null) içerebilir; bu da henüz herhangi bir üst kayda bağlı olmayan bir satırı temsil eder. Boş olmayan bir yabancı anahtar, mevcut bir birincil anahtarla eşleşmelidir.

Bu yazıyı şu şekilde özetleyin: