Rabu, 22 Oktober 2014

candidate key

Dalam model relasional dari database , candidate key dari relasi adalah minimal superkey untuk relasi itu; yaitu, set atribut sedemikian rupa sehingga:
  1. relasi tidak memiliki dua berbeda tupel (yaitu baris atau catatan dalam bahasa database umum) dengan nilai yang sama untuk atribut tersebut (yang berarti bahwa himpunan atribut adalah superkey)
  2. tidak ada bagian yang tepat dari atribut-atribut ini yang (1) memegang (yang berarti bahwa set minimal).
Atribut konstituen disebut atribut prima. Sebaliknya, atribut yang tidak terjadi di APAPUN candidate key disebut atribut non-prime.
Karena relasi tidak mengandung duplikat tupel, himpunan semua atributnya adalah superkey jika nilai NULL tidak digunakan. Oleh karena itu, setiap hubungan akan memiliki minimal satu candidate key.
Tombol calon relasi memberitahu kita semua cara yang mungkin kita dapat mengidentifikasi tupel nya. Dengan demikian mereka adalah konsep penting untuk desain skema database .
Definisi candidate key dapat diilustrasikan dengan berikut (abstrak) misalnya. Pertimbangkan variabel relasi (relvar) R dengan atribut (A, B, C, D) yang hanya memiliki dua berikut nilai-nilai hukum r1 dan r2:
r1
A B C D
a1 b1 c1 d1
a1 b2 c2 d1
a2 b1 c2 d1
r2
A B C D
a1 b1 c1 d1
a1 b2 c2 d1
a1 b1 c2 d2
Berikut r2 berbeda dari r1 hanya dalam nilai-nilai A dan D dari tuple terakhir.
Untuk r1 set berikut memiliki properti keunikan, yaitu, tidak ada dua tupel berbeda dalam contoh dengan nilai yang sama untuk atribut di set:
{A, B}, {A, C}, {B, C}, {A, B, C}, {A, B, D}, {A, C, D}, {B, C, D}, {A, B, C, D}
Untuk r2 properti keunikan berlaku untuk set berikut;
{B, C}, {B, D}, {C, D}, {A, B, C}, {A, B, D}, {A, C, D}, {B, C, D}, {A, B, C, D}
Sejak superkeys dari relvar sebuah adalah mereka set atribut yang memiliki sifat keunikan untuk semua nilai hukum relvar itu dan karena kita menganggap bahwa r1 dan r2 adalah semua nilai-nilai hukum yang R dapat mengambil, kita dapat menentukan set superkeys R oleh mengambil persimpangan dua daftar:
{B, C}, {A, B, C}, {A, B, D}, {A, C, D}, {B, C, D}, {A, B, C, D}
Akhirnya kita perlu memilih orang set untuk yang tidak ada bagian yang tepat dalam daftar, yang dalam hal ini:
{B, C}, {A, B, D}, {A, C, D}
Ini memang kunci calon relvar R.
Kita harus mempertimbangkan semua hubungan yang mungkin ditugaskan untuk relvar untuk menentukan apakah satu set tertentu dari atribut adalah candidate key. Sebagai contoh, jika kita dianggap hanya r1 maka kita akan menyimpulkan bahwa {A, ​​B} adalah kunci kandidat, yang tidak benar. Namun, kita mungkin bisa menyimpulkan dari relasi rupa sehingga satu set tertentu bukan merupakan candidate key, karena set yang tidak memiliki properti keunikan (contoh {A, D} untuk r1). Perhatikan bahwa keberadaan subset yang tepat dari satu set yang memiliki properti keunikan tidak dapat secara umum digunakan sebagai bukti bahwa superset bukanlah candidate key. Secara khusus, perhatikan bahwa dalam kasus relasi kosong, setiap bagian dari judul memiliki sifat keunikan, termasuk himpunan kosong.

Tidak ada komentar:

Posting Komentar