Kunci
(Key)
Kunci merupakan elemen record yang dipakai untuk menemukan
record tersebut pada waktu akses atau bisa digunakan untuk identifikasi tiap
record.
Jenis-jenis
kunci :
ü Superkey
ü Candidat key
ü Primary key
ü Alternate key
ü Foreign key
ü External key
Primary Key adalah atribut (field) yang dipilih untuk menentukan
struktur storage pada organisasi file multi key, adapun key lainnya disebut
dengan secondary key. Pengertian lainya Primary Key adalah suatu nilai dalam
basis data yang digunakan untuk mengidentifikasi suatu baris dalam tabel. Nilai
dari primary key adalah unik. pengertian lain
Primary
key :Salah satu atrribut dari candidat key dapat dipilih menjadi primary key
dengan 3 kriteria sbb :
- Key tersebut lebih natural untuk dijadikan acuan
- Key tersebut lebih sederhana
- Key tersebut cukup uniqe
Foreign Key adalah Sebuah kumpulan field dalam satu relasi yang
digunakan untuk me“refer” (menunjuk) ke suatu baris (tuple) pada relasi yang
lain (harus berkorespondensi dengan primary key pada relasi yang kedua),
seperti: ‘logical pointer’. Sedangkan hubungan antara keduanya (primary key
dan foreign key) di jelaskan sebagai berikut,“Primary Key” adalah field
kunci / utama dari suatu tabel yang menunjukkan bahwa field yang menjadi kunci
tersebut tidak bisa diisi dengan data yang sama, atau dengan kata lain Primary
key menjadikan tiap record memiliki identitas sendiri-sendiri yang membedakan
satu sama lainnya (unik).“Foreign key” adalah satu attribute yang melengkapi
satu relationship yang menunjukan ke induknya, dengan kata lain keduanya saling
berkaitan. pengertian lain ;
Foreign
key : merupakan sembarang atribut yang menunjuk kepada primary key pada tabel
lain.
- Akan terjadi pada suatu relasi yang memiliki kardinalitas one to many atau many to many
§ Diperkuliahan
dipertanyakan definisi dan perbedaan primary key, foreign key, unique dan
index. Tapi seperti biasa saya cma bisa diam, diotak sih ada sesuatu tapi sulit
untuk menyampaikannya, tapi hasil googling semakin meyakinkan pendapat saya.
§ Dalam
database (mysql) dikenal beberapa istilah yaitu primary key, foreign key,
unique dan index. Menurut Om Wiki, Primary Key atau Unique Key merupakan kunci yang
secara unik mengidentifikasi baris pada tabel. Primary Key atau Unique Key
dapat diterapkan pada satu atau lebih field. Apabila primary key / unique key
diterapkan pada satu atau lebih field maka pada field tersebut tidak boleh
bernilai sama untuk seluruh baris pada tabel. Kemudian yang membedakan primary
key dan unique key adalah setiap kita memberikan constraint primary key pada
field maka constraint NOT NULL akan diberikan pada field tersebut secara
otomatis, sedangkan pada unique key tidak.
§ Selain
kedua istilah diatas, terdapat juga istilah foreign key.
Dengan adanya foreign key dapat terlihat adanya hubungan antara satu tabel
dengan tabel lain. Foreign key mengidentifikasi satu atau lebih kolom pada satu
tabel (tabel referensi) mengarah dari satu atau lebih tabel lainnya (tabel
induk). Dengan adanya constraint foreign key pada satu kolom maka data pada
kolom tabel referensi harus terdapat pada tabel induk. Pada mysql 5.0, foreign
key hanya dapat diterapkan pada tabel dengan type InnoDB namun pada versi
selanjutnya dapat diterapkan juga pada MyIsam. Kemudian field dengan tipe BLOB
atau TEXT tidak dapat diberikan contraint foreign key.
Untuk mengoptimasi database kita dapat menggunakan index, karena index mampu meningkatkan kecepatan operasi pada suatu tabel (terutama operasi SELECT). Pada mysql, index dan data dari suatu tabel tersimpan secara terpisah, dengan kata lain membutuhkan ruang penyimpanan yang lebih banyak, kesalahan pemberian index pada suatu kolom dapat memperlambat operasi pada suatu tabel, karena index dibaca terlebih dahulu untuk mendapatkan data. Gunakan foreign key pada kolom yang sering digunakan untuk pencarian data.
Untuk mengoptimasi database kita dapat menggunakan index, karena index mampu meningkatkan kecepatan operasi pada suatu tabel (terutama operasi SELECT). Pada mysql, index dan data dari suatu tabel tersimpan secara terpisah, dengan kata lain membutuhkan ruang penyimpanan yang lebih banyak, kesalahan pemberian index pada suatu kolom dapat memperlambat operasi pada suatu tabel, karena index dibaca terlebih dahulu untuk mendapatkan data. Gunakan foreign key pada kolom yang sering digunakan untuk pencarian data.
thanks, untuk literasinya
AntwoordVee uit