Study
SQL

Constraints: PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL

Penjelasan

Constraint adalah aturan yang dipaksakan database pada data di kolom tertentu. `PRIMARY KEY` menandai kolom identitas unik tiap baris (biasanya `id`). `FOREIGN KEY` memastikan nilai suatu kolom harus cocok dengan primary key di tabel lain (menjaga relasi tetap valid — tidak bisa insert order dengan product_id yang tidak ada). `UNIQUE` memastikan tidak ada nilai kembar (misal email). `NOT NULL` memastikan kolom wajib diisi. `DEFAULT` memberi nilai bawaan kalau tidak diisi.

Contoh Konsep

CREATE TABLE orders (
    id INT PRIMARY KEY AUTO_INCREMENT,
    product_id INT NOT NULL,
    quantity INT DEFAULT 1,
    FOREIGN KEY (product_id) REFERENCES products(id)
);

CREATE TABLE users (
    id INT PRIMARY KEY AUTO_INCREMENT,
    email VARCHAR(150) UNIQUE NOT NULL,
    name VARCHAR(100) NOT NULL
);

-- Ini akan GAGAL karena product_id 999 tidak ada di tabel products
-- INSERT INTO orders (product_id) VALUES (999);

Praktikum

Tulis query CREATE TABLE untuk 'article_tags' dengan kolom id (primary key), article_id (foreign key ke articles.id), tag_name (wajib diisi, tidak boleh NULL).

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

FOREIGN KEY mencegah data "yatim" (orphan) — baris yang merujuk ke data induk yang sudah tidak ada. Ini alasan utama kenapa database relasional lebih aman daripada menyimpan relasi cuma di level aplikasi.