Penjelasan
Foreign key pada database adalah kolom atau sekelompok kolom dalam sebuah tabel yang mereferensikan primary key atau unique key di tabel lain. Foreign key digunakan untuk membangun hubungan antara dua tabel dalam database relasional.
Dalam hubungan antar tabel, tabel yang mereferensikan primary key atau unique key disebut sebagai tabel anak (child table) dan tabel yang menjadi rujukan disebut sebagai tabel induk (parent table). Kolom foreign key pada tabel anak menunjukkan bahwa nilai pada kolom tersebut berasal dari nilai pada primary key atau unique key di tabel induk.
Contoh penggunaan foreign key pada tabel "siswa" dan "kelas":
CREATE TABLE kelas (
id INT PRIMARY KEY,
nama_kelas VARCHAR(50),
tingkat VARCHAR(10)
);
CREATE TABLE siswa (
id INT PRIMARY KEY,
nama VARCHAR(50),
id_kelas INT,
umur INT,
FOREIGN KEY (id_kelas) REFERENCES kelas(id)
);
Dalam contoh di atas, kolom "id_kelas" pada tabel "siswa" merupakan foreign key yang mereferensikan kolom "id" pada tabel "kelas". Dengan menggunakan foreign key ini, kita dapat membangun hubungan antara tabel "siswa" dan "kelas". Setiap nilai pada kolom "id_kelas" pada tabel "siswa" harus sesuai dengan nilai pada kolom "id" pada tabel "kelas".
Fungsi FOREIGN KEY
Beberapa fungsi penting dari foreign key pada database antara lain:
- Membentuk hubungan antar tabel: Dengan menggunakan foreign key, kita dapat membangun hubungan antar tabel dalam database relasional, sehingga memudahkan dalam mengakses dan mengolah data.
- Memastikan integritas data: Dengan menggunakan foreign key, kita dapat memastikan integritas data dalam database, karena setiap nilai pada kolom foreign key harus sesuai dengan nilai pada kolom primary key atau unique key di tabel lain.
- Melindungi data dari perubahan atau penghapusan yang tidak diinginkan: Jika ada perubahan atau penghapusan data pada tabel yang memiliki hubungan dengan tabel lain melalui foreign key, database akan memberikan peringatan atau error agar kita dapat memperbaiki atau membatalkan operasi tersebut, sehingga melindungi data dari perubahan atau penghapusan yang tidak diinginkan.
- Mengoptimalkan kinerja database: Dengan menggunakan foreign key, kita dapat mempercepat operasi database seperti pencarian dan pengambilan data, karena kita dapat melakukan join antar tabel yang terhubung melalui foreign key.
Komentar
Posting Komentar