Pengertian Dasar Foreign Key dan Null Constraint
Dalam perancangan basis data relasional, pemanfaatan aturan integritas seperti Foreign Key dan constraint kolom (seperti NOT NULL) sangat penting untuk menjaga konsistensi data antar tabel. Sebuah Foreign Key merujuk ke Primary Key pada tabel lain, sementara constraint seperti NOT NULL memastikan bahwa sebuah kolom tidak boleh dibiarkan kosong saat operasi penyisipan atau pembaruan data dilakukan.
Contoh Implementasi Tabel SQL
Berdasarkan dokumentasi dan referensi standar SQL, berikut adalah contoh pembuatan tabel yang menerapkan constraint pada kolom tertentu, seperti penggunaan constraint primary key dan pembatasan nilai kosong:
CREATE TABLE user (
username VARCHAR(30) CONSTRAINT PRIMARY KEY,
passwd VARCHAR(20) NOT NULL,
tanggal_lahir DATETIME
);
Matriks Perbandingan Aturan Kolom (Constraint Matrix)
| Jenis Constraint | Fungsi Utama | Perilaku Nilai Kosong (NULL) |
|---|---|---|
| PRIMARY KEY | Mengidentifikasi baris secara unik pada tabel | Tidak diizinkan (Harus bernilai unik dan NOT NULL) |
| NOT NULL | Memastikan kolom wajib diisi data | Ditolak; baris baru gagal disimpan jika nilai dikosongkan |
| FOREIGN KEY | Menghubungkan relasi antar tabel secara integritas | Tergantung definisi; secara default foreign key memperbolehkan nilai NULL kecuali diberi tambahan constraint NOT NULL |
Analisis Perilaku Null pada Foreign Key
Secara default, kolom yang didefinisikan sebagai Foreign Key di banyak sistem manajemen basis data relasional (RDBMS) mengizinkan nilai NULL. Hal ini merepresentasikan kondisi opsional atau relasi yang belum terisi (misalnya, seorang pengguna belum memiliki departemen atau kategori terkait). Namun, jika kolom tersebut diberikan aturan tambahan berupa NOT NULL, maka setiap baris data wajib memiliki referensi yang valid ke tabel induknya.