Cara Membuat Foreign Key Di MySQL


Cara Membuat Foreign Key – Jika sering berkecimpung dalam dunia database, termasuk MySQL pastinya Anda sudah tidak asing dengan istilah foreign key dan primary key. Untuk informasi, primary key adalah istilah yang sering disebut dengan kunci utama pada field tertentu di dalam suatu tabel.



Tabel ini sendiri menjadi acuan untuk mendefinisikan suatu baris atau rows data. Sedangkan foreign key adalah atribut pada tabel yang menunjukkan hubungan ke tabel induknya.

Misalnya ada suatu database penjual dan terdapat field id_pembeli pada tabel pembeli yang menjadi primary key. Field ini bisa menjadi foreign key pada tabel transaksi. Demikian pula dengan field id_barang yang menjadi primary key pada tabel barang, namun juga bisa menjadi foreign key pada tabel transaksi.

Kita bisa membuat relasi dari ketiga tabel tersebut dengan menghubungkan antara tabel pembeli ke tabel transaksi dengan memakai field id_pembeli dan dari tabel transaksi ke tabel barang dengan menggunakan field id_barang.

Field yang Bisa Digunakan untuk Primary Key

Baca juga: Cara Membuat Database MySQL

Supaya tabel bisa direlasikan, maka kita harus mengetahui syarat apa saja yang harus dipenuhi suatu field yang akan dijadikan sebagai primary key. Berikut adalah beberapa syaratnya.

Field Harus Unik

Field bersifat unik dan tidak boleh ada data yang sama. Sebagai gambaran field nama tidak dapat digunakan sebagai primary key. Alasannya ada kemungkinan orang dengan nama yang sama. Field yang cocok dijadikan sebagai primary key adalah Nomor Induk Mahasiswa (NIM), Nomor Induk Kependudukan (NIK), kode pemesanan, kode barang dan lain sebagainya yang data satu dengan data lainnya tidak mungkin sama.



Field Harus Memiliki Nilai

Field yang akan dijadikan primary key harus ada nilainya (not null) atau tidak boleh kosong. Sebab seperti yang sudah disinggung di atas, primary key menjadi acuan untuk field-field yang lain. Sehingga field yang dijadikan primary key harus ada nilainya.

Umumnya saat membuat tabel pada field yang ingin dijadikan sebagai primary key, kita perlu menambahkan atribut not null.

Tipe Data Bukan BLOB

Ketentuan lain untuk membuat suatu field menjadi primary key adalah tipe datanya. Tipe data yang dipakai tidak boleh berjenis Binary Large Object (BLOB). Tipe data yang dianjurkan adalah Char atau Integer.

Bersifat Independen

FIeld yang akan dijadikan primary key harus bersifat independen. Artinya field tersebut bisa berdiri sendiri tanpa ada intervensi dari field atau kolom tabel lain.



Syarat Membuat Foreign Key

Jika ingin membuat foreign key pada MySQL, kita juga perlu mengetahui apa saja yang menjadi syarat dalam menjadikan suatu field sebagai foreign key. Berikut adalah beberapa ketentuan dalam membuat foreign key.

Engine Penyimpanan InnoDB

Ketika ingin membuat foreign key, kita perlu memastikan bahwa engine penyimpanan yang dipakai pada tabel adalah InnoDB. Sebab sejauh ini hanya engine tersebut yang mendukung fitur foreign key. Lalu bagaimana cara memastikan engine tersebut?



Leave a Comment