Show
LoginRegister {tocify} $title={Daftar Isi} Pendahuluan: Foreign key pada mysql digunakan untuk membangun dan menjaga hubungan antar dua tabel atau lebih, tabel dengan foreign key disebut child table dan tabel referensinya disebut sebagai parent table. Ketika akan membuat foreign key diperlukan kolom yang akan menyimpan data berdasarkan tabel referensi (parent). Pembahasan mengenai foreign key dapat dicari dan dibaca melalui halaman daftar isi. Create TableCara pertama untuk membuat foreign key adalah pada saat mendefinisikan tabel, kita dapat langsung membuat/menambahkan foreign key di dalamnya dengan format dan contohnya sebagai berikut: Format:
Contoh:
Jika saat mendefinisikan tabel sementara nama constraint untuk foreign key tidak didefinisikan maka akan diberi nama secara default yang mana nama constraintnya dapat dilihat dengan menjalankan perintah show create table nama_tabel. Alter TableCara kedua untuk membuat/menambahkan foreign key adalah dengan menjalankan alter table, ini dilakukan jika pada saat mendefinisikan table kita lupa untuk memberikan foreign key. Format dan contohnya sebagai berikut: Format:
Contoh:
Menghapus Foreign KeyKita juga dapat menghapus foreign key di mana ada beberapa alasan ketika foreign key perlu dihapus:
Format dan contohnya sebagai berikut: Format:
Contoh:
Merubah Parent TabelJika pada suatu waktu parent table perlu dimodifikasi terutama pada kolom yang menjadi referensi dari child tabel maka kita perlu menghapus foreign key terlebih dahulu untuk dapat menjalankan operasi alter table pada table parent. Contohnya penulis memiliki tabel seperti berikut:
Asumsikan pada tabel parent (dasen) penulis salah memberi nama tabel yang seharusnya menjadi dosen serta kolom id_disen yang seharusnya id_dosen dan penulis juga lupa untuk menambahkan atribut auto_increment pada kolom id_disen sehingga harus menambahkkannya, maka penulis perlu menjalankan perintah alter table, contohnya seperti berikut:
Dapat dilihat bahwa penulis dapat mengganti nama tabel dan kolom pada tabel dasen namun tidak bisa menambahkan atribut auto_increment karena kolom tersebut menjadi referensi dari untuk child table (gaji), dengan demikian kita perlu menghapus foreign key terlebih dahulu dari child table sehingga dapat memodifikasi kolom id_dosen, contohnya seperti berikut:
Untuk mencegah permasalahan serupa kita perlu memahami karakteristik dari foreign key, diantaranya sebagai berikut:
Langkah langkah membuat foreign key?Cara Membuat Foreign Key di PHPMyAdmin. Pertama kamu haru membuka tabel yang ingin kamu tambahkan foreign key tersebut dan buka tab 'Structure'. Kamu akan melihat sub menu 'Relation View'.. Pilih kolom yang menampung kunci asing serta tabel yang akan kamu referensikan dengan foreign key tersebut.. Apa itu foreign key di MySQL?Constraint FOREIGN KEY adalah kunci yang digunakan untuk menghubungkan dua tabel bersama-sama.
Kapan bisa menggunakan foreign key?Secara umum, foreign key biasa digunakan sebagai penanda hubungan antar tabel. Tabel pertama memiliki peran utama sehingga disebut sebagai primary key di dalamnya, dan tabel kedua merupakan foreign key yang biasa disebut dengan kunci asing.
Bagaimana caranya membuat sebuah field menjadi primary key?Di Perancang 'Tabel': klik pemilih baris untuk kolom database yang ingin kamu tetapkan sebagai 'primary key'. Jika kamu ingin memilih beberapa kolom, tahan tombol 'CTRL' sambil mengklik pemilih baris untuk kolom lainnya. Klik kanan pemilih baris untuk kolom dan pilih Setel 'Primary Key'.
|