Membuat Foreign Key pada Tabel MySQL

Update Terakhir pada

Dalam membuat sebuah tabel, tentunya kita selalu ingat akan yang namanya PRIMARY KEY.

Yaitu, kunci utama atau ciri khas utama dalam suatu tabel database. Seperti NIK, NIM, NIS, kode dan lain sebagainya.

Nah, di kesempatan kali ini kita akan mempelajari Foreign Key.

Foreign Key adalah kunci tamu, yang nantinya akan dihubungkan dengan PRIMARY KEY dari tabel lain.

Bingung ya???

Pastinya kita pernah mengunjungi website toko online atau web blog tutorial-tutorial.

Dalam website tersebut, pastinya ada menu kategori kan???

Misalnya kategori produk, atau mungkin kategori artikel suatu blog.

Lalu kita klik kategori tersebut, maka postingan-postingan yang terkait kategori tersebut langsung keluar kan???

Hal tersebut tujuannya supaya lebih mempermudah pencarian postingan yang ingin kita cari.

Nah, kira-kira begitulah. Untuk melakukan hal tersebut, dibutuhkan relasi atau sambungan antara FOREIGN KEY pada salah satu tabel dengan PRIMARY KEY pada tabel yang terlibat.

Kalo bingung, langsung aja kita mulai ya.

Ceritanya, kita akan membuat sebuah database baru melalui phpmyadmin.

Database tersebut, memiliki studi kasus tentang website blog.

Berikut ini adalah langkah-langkahnya.

  1. Buat database baru, sebagai contoh disini kita beri nama “my_artikel”.
  1. Buat tabel baru, namanya “kategori”. Dan berikut ini adalah spesifikasinya.

3. Buat tabel kedua, namanya “posting”. Dan berikut ini adalah spesifikasinya.

  1. Pada tabel “posting” ini terdapat atribut bernama “id_kategori” dan namanya sama dengan yang ada pada tabel “kategori”.
    Tujuannya, atribut “id_kategori” ini akan disambungkan dengan PRIMARY KEY “id_kategori” pada tabel “kategori”.
    Oke, klik “more tools” pada baris atribut “id_kategori” lalu klik “Index”.
  1. Nah, dari langkah no. 4 tadi, kita sudah berhasil membuat FOREIGN KEY. Bentuknya bergambar kunci berwarna silver.
    O iya, perlu diperhatikan bahwa FOREIGN KEY dari kunci tamu suatu tabel, harus sama tipe datanya dengan tabel yang akan kita pinjam (yang punya PRIMARY KEYnya).

6. Klik ke menu awal databasenya. Kali ini kita akan membuat tabel “posting” akan berelasi dengan tabel “kategori”.

7. Klik “More”, lalu pilih “Designer”.

  1. Maka akan tampil gambar rancangan dari kedua tabel yang sudah kita buat.
    Gambar kedua tabel pada bagian ini bisa didrag untuk dipindahkan jika posisinya tidak sesuai dan bisa disesuaikan sesuai gimana maunya kita.
    Klik pada dashbord kiri pada gambar design tersebut (tanda panah).

9. Jadi menunya akan melebar, lalu klik “Create Relationship”.

10. Klik pada tabel “kategori”, tepatnya pada “id_kategori” alias PRIMARY KEYnya.

11. Klik pada tabel “posting”, tepatnya pada “id_kategori” alias FOREIGN KEYnya.

  1. Maka muncul menu popup menu setingan relasinya, lalu setting ON DELETE dan ON UPDATE menjadi “cascade”.
    Tujuannya supaya jika ada perubahan isi data dari PRIMARY KEY tabel “kategori”, maka itu akan berpengaruh pada tabel “posting”.

13. Nah, sekarang sudah berelasi.

  1. Untuk mencobanya kita bisa isi data pada tabel “kategori”, dengan contoh sebagai berikut.
  1. Lalu kita coba klik memasukkan data untuk tabel “posting”, tepatnya menu “insert”.
    Nah, kita bisa lihat pada atribut “id_kategori” pada gambar di bawah ini.
    Jadi ada pilihannya kan??? Jadi, yang sudah terisi di tabel “kategori”, akan tampil disini.

Nah, jadi seperti itulah sekiranya.

Selamat Mencoba ya…dan Semoga Bermanfaat.