Apa Kunci di DBMS?
KEYS dalam DBMS adalah atribut atau sekumpulan atribut yang membantu Anda mengidentifikasi baris (tuple) dalam suatu relasi (tabel). Mereka memungkinkan Anda menemukan hubungan antara dua tabel. Tombol membantu Anda secara unik mengidentifikasi baris dalam tabel dengan kombinasi satu atau beberapa kolom dalam tabel itu. Key juga berguna untuk menemukan record atau baris unik dari tabel. Kunci database juga berguna untuk menemukan record atau baris unik dari tabel.
Contoh:
identitas pegawai | Nama depan | Nama keluarga |
11 | Andrew | Johnson |
22 | Tom | Kayu |
33 | Alex | Sehat |
Dalam contoh yang diberikan di atas, ID karyawan adalah kunci utama karena secara unik mengidentifikasi catatan karyawan. Dalam tabel ini, tidak ada karyawan lain yang dapat memiliki ID karyawan yang sama.
Dalam tutorial ini, Anda akan mempelajari:
- Apa itu Keys?
- Mengapa kita membutuhkan Kunci?
- Berbagai Kunci dalam Sistem Manajemen Database
- Apa itu Super key?
- Apa itu Kunci Utama?
- Apa itu kunci alternatif?
- Apa itu Kunci Kandidat?
- Apa itu kunci asing?
- Apa itu kunci majemuk?
- Apa itu kunci komposit?
- Apa itu Kunci Pengganti?
- Perbedaan Antara Kunci Primer & Kunci Asing
Mengapa kita membutuhkan Kunci?
Berikut beberapa alasan untuk menggunakan kunci sql dalam sistem DBMS.
- Kunci membantu Anda mengidentifikasi baris data apa pun dalam tabel. Dalam aplikasi dunia nyata, tabel dapat berisi ribuan catatan. Apalagi, catatan itu bisa digandakan. Kunci memastikan bahwa Anda dapat mengidentifikasi rekaman tabel secara unik meskipun ada tantangan ini.
- Memungkinkan Anda membuat hubungan antara dan mengidentifikasi hubungan antar tabel
- Membantu Anda untuk menegakkan identitas dan integritas dalam hubungan.
Jenis Kunci dalam Sistem Manajemen Database
Terutama ada tujuh jenis Kunci di DBMS dan setiap kunci memiliki fungsionalitas yang berbeda:
- Super Key - Super key adalah sekelompok kunci tunggal atau ganda yang mengidentifikasi baris dalam tabel.
- Kunci Utama - adalah kolom atau grup kolom dalam tabel yang secara unik mengidentifikasi setiap baris dalam tabel itu.
- Kunci Kandidat - adalah sekumpulan atribut yang secara unik mengidentifikasi tupel dalam sebuah tabel. Kunci Kandidat adalah kunci super tanpa atribut berulang.
- Kunci Alternatif - adalah kolom atau grup kolom dalam tabel yang secara unik mengidentifikasi setiap baris dalam tabel itu.
- Kunci Asing - adalah kolom yang membuat hubungan antara dua tabel. Tujuan kunci Asing adalah untuk menjaga integritas data dan memungkinkan navigasi antara dua contoh yang berbeda dari suatu entitas.
- Kunci Gabungan - memiliki dua atau lebih atribut yang memungkinkan Anda mengenali rekaman tertentu secara unik. Ada kemungkinan bahwa setiap kolom mungkin tidak unik dengan sendirinya di dalam database.
- Kunci Komposit - Kunci buatan yang bertujuan untuk mengidentifikasi setiap rekaman secara unik disebut kunci pengganti. Jenis kunci ini unik karena dibuat saat Anda tidak memiliki kunci primer alami.
- Kunci Pengganti - Kunci buatan yang bertujuan untuk mengidentifikasi setiap catatan secara unik disebut kunci pengganti. Jenis kunci ini unik karena dibuat saat Anda tidak memiliki kunci primer alami.
Apa kunci Super itu?
Superkey adalah sekelompok kunci tunggal atau ganda yang mengidentifikasi baris dalam sebuah tabel. Kunci Super mungkin memiliki atribut tambahan yang tidak diperlukan untuk identifikasi unik.
Contoh:
EmpSSN | EmpNum | Empname |
9812345098 | AB05 | Tampil |
9876512345 | AB06 | Roslyn |
199937890 | AB07 | James |
Dalam contoh yang diberikan di atas, EmpSSN dan nama EmpNum adalah superkeys.
Apa itu Kunci Utama?
PRIMARY KEY adalah kolom atau kumpulan kolom dalam tabel yang secara unik mengidentifikasi setiap baris dalam tabel tersebut. Kunci Utama tidak boleh duplikat, artinya nilai yang sama tidak dapat muncul lebih dari sekali dalam tabel. Tabel tidak boleh memiliki lebih dari satu kunci utama.
Aturan untuk menentukan kunci utama:
- Dua baris tidak boleh memiliki nilai kunci utama yang sama
- Setiap baris harus memiliki nilai kunci utama.
- Bidang kunci utama tidak boleh kosong.
- Nilai di kolom kunci utama tidak pernah bisa diubah atau diperbarui jika ada kunci asing yang merujuk ke kunci utama tersebut.
Contoh:
Pada contoh berikut, StudID
adalah Kunci Utama.
StudID | Gulung Tidak | Nama depan | Nama keluarga | Surel |
1 | 11 | Tom | Harga | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
2 | 12 | Nick | Wright | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
3 | 13 | Dana | Natan | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
Apa kunci alternatifnya?
ALTERNATE KEYS adalah kolom atau grup kolom dalam tabel yang secara unik mengidentifikasi setiap baris dalam tabel itu. Tabel dapat memiliki beberapa pilihan untuk kunci utama tetapi hanya satu yang dapat diatur sebagai kunci utama. Semua kunci yang bukan kunci utama disebut Kunci Alternatif.
Contoh:
Dalam tabel ini, StudID, Roll No, Email memenuhi syarat untuk menjadi kunci utama. Tetapi karena StudID adalah kunci utama, Roll No, Email menjadi kunci alternatif.
StudID | Gulung Tidak | Nama depan | Nama keluarga | Surel |
1 | 11 | Tom | Harga | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
2 | 12 | Nick | Wright | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
3 | 13 | Dana | Natan | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
Apa itu Kunci Kandidat?
CANDIDATE KEY adalah sekumpulan atribut yang secara unik mengidentifikasi tupel dalam sebuah tabel. Kunci Kandidat adalah kunci super tanpa atribut berulang. Kunci utama harus dipilih dari kunci kandidat. Setiap tabel harus memiliki setidaknya satu kunci kandidat. Sebuah tabel dapat memiliki beberapa kunci kandidat tetapi hanya satu kunci utama.
Properti kunci Kandidat:
- Itu harus mengandung nilai-nilai unik
- Kunci kandidat mungkin memiliki beberapa atribut
- Tidak boleh mengandung nilai nol
- Ini harus berisi bidang minimum untuk memastikan keunikan
- Identifikasi setiap record secara unik dalam tabel
Contoh: Di tabel yang diberikan Stud ID, Roll No, dan email adalah kunci kandidat yang membantu kami mengidentifikasi secara unik catatan siswa di tabel.
StudID | Gulung Tidak | Nama depan | Nama keluarga | Surel |
1 | 11 | Tom | Harga | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
2 | 12 | Nick | Wright | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
3 | 13 | Dana | Natan | Alamat email ini dilindungi dari robot spam. Anda perlu mengaktifkan JavaScript untuk melihatnya. |
Apa kunci Asing?
KUNCI ASING adalah kolom yang membuat hubungan antara dua tabel. Tujuan kunci Asing adalah untuk menjaga integritas data dan memungkinkan navigasi antara dua contoh yang berbeda dari suatu entitas. Ini bertindak sebagai referensi silang antara dua tabel karena mereferensikan kunci utama dari tabel lain.
Contoh:
DeptCode | DeptName |
001 | Ilmu |
002 | Inggris |
005 | Komputer |
ID Guru | Fname | Lname |
B002 | David | Warner |
B017 | Sara | Joseph |
B009 | Mike | Brunton |
Dalam contoh kunci dalam dbms ini, kami memiliki dua tabel, mengajar dan departemen di sekolah. Namun, tidak ada cara untuk melihat pencarian mana yang berhasil di departemen mana.
Dalam tabel ini, menambahkan kunci asing di Deptcode ke nama Guru, kita bisa membuat hubungan antara dua tabel.
ID Guru | DeptCode | Fname | Lname |
B002 | 002 | David | Warner |
B017 | 002 | Sara | Joseph |
B009 | 001 | Mike | Brunton |
Konsep ini juga dikenal sebagai Integritas Referensial.
Apa kunci Compound?
COMPOUND KEY memiliki dua atau lebih atribut yang memungkinkan Anda mengenali rekaman tertentu secara unik. Ada kemungkinan bahwa setiap kolom mungkin tidak unik dengan sendirinya di dalam database. Namun, bila digabungkan dengan kolom atau kolom lain, kombinasi kunci komposit menjadi unik. Tujuan dari kunci gabungan dalam database adalah untuk mengidentifikasi secara unik setiap record dalam tabel.
Contoh:
Nomor pesanan | PorductID | Nama Produk | Kuantitas |
B005 | JAP102459 | Mouse | 5 |
B005 | DKT321573 | USB | 10 |
B005 | OMG446789 | Layar LCD | 20 |
B004 | DKT321573 | USB | 15 |
B002 | OMG446789 | Printer laser | 3 |
Dalam contoh ini, OrderNo dan ProductID tidak bisa menjadi kunci utama karena tidak mengidentifikasi catatan secara unik. Namun, kunci gabungan dari Order ID dan Product ID dapat digunakan karena mengidentifikasi setiap record secara unik.
Apa itu kunci Komposit?
KUNCI KOMPOSIT adalah kombinasi dari dua atau lebih kolom yang secara unik mengidentifikasi baris dalam sebuah tabel. Kombinasi kolom menjamin keunikan, meskipun keunikan individual tidak dijamin. Oleh karena itu, keduanya digabungkan untuk mengidentifikasi rekaman secara unik dalam tabel.
Perbedaan antara kunci gabungan dan kunci gabungan adalah bahwa setiap bagian dari kunci gabungan dapat menjadi kunci asing, tetapi kunci gabungan mungkin atau mungkin bukan bagian dari kunci asing.
Apa itu Kunci Pengganti?
SURROGATE KEYS adalah kunci buatan yang bertujuan untuk mengidentifikasi setiap record secara unik disebut kunci pengganti. Jenis kunci parsial dalam dbms ini unik karena dibuat saat Anda tidak memiliki kunci primer alami. Mereka tidak memberikan arti apa pun pada data dalam tabel. Kunci pengganti biasanya berupa bilangan bulat. Kunci pengganti adalah nilai yang dihasilkan tepat sebelum rekaman dimasukkan ke dalam tabel.
Fname | Nama keluarga | Waktu mulai | Akhir waktu |
Anne | Smith | 09:00 | 18:00 |
Mendongkrak | Francis | 08:00 | 17:00 |
Anna | McLean | 11:00 | 20:00 |
Tampil | Willam | 14:00 | 23:00 |
Di atas, diberikan contoh, ditunjukkan pengaturan waktu shift dari karyawan yang berbeda. Dalam contoh ini, kunci pengganti diperlukan untuk mengidentifikasi setiap karyawan secara unik.
Kunci pengganti dalam sql diperbolehkan jika
- Tidak ada properti yang memiliki parameter kunci utama.
- Di tabel bila kunci utama terlalu besar atau rumit.
Perbedaan Antara Kunci Primer & Kunci Asing
Kunci utama | Kunci asing |
Membantu Anda secara unik mengidentifikasi rekaman dalam tabel. | Ini adalah bidang dalam tabel yang merupakan kunci utama dari tabel lain. |
Kunci Utama tidak pernah menerima nilai nol. | Kunci asing dapat menerima beberapa nilai nol. |
Kunci utama adalah indeks berkerumun dan data dalam tabel DBMS secara fisik diatur dalam urutan indeks berkerumun. | Kunci asing tidak dapat secara otomatis membuat indeks, berkerumun atau tidak berkerumun. Namun, Anda dapat membuat indeks secara manual pada kunci asing. |
Anda dapat memiliki satu kunci utama dalam sebuah tabel. | Anda dapat memiliki beberapa kunci asing dalam satu tabel. |
Ringkasan
- Kunci dalam SQL adalah atribut atau sekumpulan atribut yang membantu Anda mengidentifikasi baris (tuple) dalam suatu relasi (tabel)
- Kunci DBMS memungkinkan Anda untuk membuat hubungan antara dan mengidentifikasi hubungan antar tabel
- Tujuh Jenis kunci DBMS adalah Kunci Super, Primer, Kandidat, Alternatif, Asing, Senyawa, Komposit, dan Pengganti.
- Kunci super adalah sekelompok kunci tunggal atau ganda yang mengidentifikasi baris dalam tabel.
- Kolom atau sekelompok kolom dalam tabel yang membantu kita mengidentifikasi secara unik setiap baris dalam tabel itu disebut kunci utama
- Semua kunci yang bukan kunci utama disebut kunci alternatif
- Kunci super tanpa atribut berulang disebut kunci kandidat
- Kunci majemuk adalah kunci yang memiliki banyak bidang yang memungkinkan Anda mengenali rekaman tertentu secara unik
- Kunci yang memiliki beberapa atribut untuk mengidentifikasi baris secara unik dalam tabel disebut kunci komposit
- Kunci buatan yang bertujuan untuk mengidentifikasi setiap record secara unik disebut kunci pengganti
- Kunci Utama tidak pernah menerima nilai nol sementara kunci asing dapat menerima beberapa nilai nol.