Key adalah satu atau gabungan dr beberapa atribut yg dpt membedakan semua baris data (row) dlm tabel secara unik.
Artinya : jika suatu atribut dijadikan key maka tdk boleh ada 2 atau lebih baris data dengan nilai yg sama untuk atribut tersebut.
• Sebuah key membantu mendefenisikan relasi entitas.
• Harus unik dan tidak boleh kosong
Super Key
• Satu atau lebih atribut (kumpulan atribut) yg dpt membedakan setiap baris data dlm sebuah tabel secara unik.
• Satu atau lebih atribut (kumpulan atribut) secara unik mengenali setiap entitas dalam sebuah tabel.
• Contoh : tabel Mahasiswa = {nim, nama_mhs, alamat_mhs, tgl_lahir}
- (nim, nama_mhs, alamat_mhs, tgl_lahir)
- (nim, nama_mhs, alamat_mhs)
- (nim, nama_mhs)
- (nama_mhs) : jika bisa menjamin tdk ada nilai yg sama
- (nim)
Candidat Key
• Kumpulan atribut minimal yg dpt membedakan setiap baris data dlm sebuah tabel secara unik.
• Tdk boleh berisi atribut / kumpulan atribut yg telah menjadi super-key yg lain.
• Sebuah candidate-key pasti super-key, tapi blm tentu sebaliknya.
• Contoh : tabel Mahasiswa = {nim, nama_mhs, alamat_mhs, tgl_lahir}
- (nim)
- (nama_mhs) : jika bisa menjamin tdk ada nilai yg sama
- Pd sebuah tabel dimungkinkan ada lebih dr 1 candidate-key jika ya, maka dpt dijadikan sebagai primary key.
Primary Key
• Dasar pemilihan primary key dari candidate-key :
- Key tersebut lebih sering dijadikan sebagai acuan.
- Key tersebut lebih ringkas.
- Jaminan keunikan key tersebut lebih baik.
• Merupakan candidate-key yg terpilih utk mengenali secara unik seluruh nilai atribut pada sebuah baris. Tidak boleh kosong.
• Contoh : tabel Mahasiswa = {nim, nama_mhs, alamat_mhs, tgl_lahir}
- (nim)
Secondary Key
Sebuah atribut / kombinasi atribut secara paksa digunakan untuk tujuan pengambilan data.
Foregn Key
Sebuah atribut / kombinasi atribut dalam sebuah tabel dimana nilainya cocok dengan primary-key pada tabel lainnya.
Contoh :
- tabel Mahasiswa = {nim, nama_mhs, alamat_mhs, tgl_lahir, kode_dosen}
- tabel Dosen = {kode_dosen, nama_dosen, alamat_dosen, tgl_lahir}
Keterangan :
Tabel Mahasiswa :
- Primary-key : nim
- Foreign-key : kode_dosen
Tabel Dosen :
- Primary-key : kode_dosen
- Foreign-key : tidak ada
Tidak ada komentar:
Posting Komentar