Entity-Relationship Diagram
ER Diagram adalah representasi visual dari struktur database. Menunjukkan entitas (tabel), atribut (kolom), dan relasi antar entitas.
Komponen ER Diagram
- Entity (Entitas) — objek yang datanya disimpan, digambar sebagai persegi panjang. Contoh: User, Product, Order
- Attribute (Atribut) — properti dari entitas, digambar sebagai oval. Contoh: name, email, price
- Relationship (Relasi) — hubungan antar entitas, digambar sebagai belah ketupat. Contoh: "membeli", "memiliki"
Contoh ER → SQL
-- Entity: users
CREATE TABLE users (
id SERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(255) UNIQUE NOT NULL
);
-- Entity: posts
CREATE TABLE posts (
id SERIAL PRIMARY KEY,
title VARCHAR(200) NOT NULL,
body TEXT,
user_id INT REFERENCES users(id)
);
-- Relasi: users --[1:N]--> posts
-- Satu user bisa punya banyak post
Jenis Atribut
- Simple — tidak bisa dipecah lagi (name, email)
- Composite — bisa dipecah (alamat → jalan, kota, kodepos)
- Derived — dihitung dari atribut lain (umur dari tanggal lahir)
- Multi-valued — bisa punya banyak nilai (nomor telepon)
Notasi Kardinalitas
Kardinalitas ditulis dalam format 1:1, 1:N, atau M:N. Contoh: users --[1:N]--> posts artinya satu user bisa memiliki banyak (N) posts, tapi setiap post hanya milik satu user.
Tips Membuat ER Diagram
- Mulai dari entitas utama (user, product, order)
- Identifikasi relasi antar entitas
- Tentukan kardinalitas (1:1, 1:N, M:N)
- Gunakan tool seperti dbdiagram.io atau draw.io