Pengertian ERD, Rumus dan Rincian

 Entity-Relationship Diagram (ERD)

ERD adalah diagram yang menggambarkan struktur logis basis data dengan menampilkan entitas, atribut, dan relasi di antara entitas-entitas tersebut. ERD membantu merancang database sebelum implementasi, memastikan konsistensi dan kejelasan hubungan data.


1. Pengertian ERD

  • Entitas: Objek nyata atau konseptual yang memiliki data, contohnya Siswa, Kelas, Produk.

  • Atribut: Properti atau informasi detail tentang entitas, misalnya entitas Siswa punya atribut NIS, Nama, Tanggal_Lahir.

  • Relasi: Hubungan antara dua (atau lebih) entitas, seperti satu Siswa “BERADA_DI” satu Kelas.

ERD memetakan model data sehingga memudahkan developer dan stakeholder memahami bagaimana data saling terhubung.


2. Komponen Utama ERD

Komponen Simbol / Notasi Keterangan
Entitas Persegi panjang Menyatakan objek/data utama
Atribut Oval Menyatakan detail/field dari entitas
Primary Key Atribut bergaris bawah Atribut unik untuk tiap instansi entitas
Relasi Belah ketupat (♦) Menyatakan jenis hubungan antar entitas
Kardinalitas Angka atau simbol (1, N, M) Menunjukkan jumlah maksimum/minimum hubungan

3. Jenis Kardinalitas Relasi

  • One-to-One (1–1)
    Setiap baris entitas A berpasangan tepat satu baris entitas B.

  • One-to-Many (1–N)
    Satu baris entitas A dapat berhubungan dengan banyak baris entitas B, tapi B hanya dengan satu A.

  • Many-to-Many (M–N)
    Banyak baris entitas A bisa berhubungan dengan banyak baris entitas B (biasanya membutuhkan tabel penghubung).


4. Contoh ERD Sederhana

Misalkan kita punya sistem Perpustakaan dengan tiga entitas: Buku, Anggota, dan Peminjaman.

[ BUKU ]            [ ANGGOTA ]
   |                   |
   | 1             1   |
   |                   |
   +---< DIPINJAM >----+
             N–M
      [ PEMINJAMAN ]
  • Entitas Buku

    • PK: ISBN

    • Atribut: Judul, Pengarang, Tahun

  • Entitas Anggota

    • PK: ID_Anggota

    • Atribut: Nama, Alamat, No_Telp

  • Entitas Peminjaman

    • PK: (ISBN, ID_Anggota, Tgl_Pinjam)

    • Atribut: Tgl_Kembali, Denda

Relasi

  • Buku 1–N Peminjaman (satu buku bisa dipinjam berulang kali)

  • Anggota 1–N Peminjaman (satu anggota bisa meminjam banyak buku)


5. Inti/Terperinci

  1. Definisi & Tujuan

    • ERD adalah alat visual untuk merancang struktur database.

    • Meminimalisir redundansi & inkonsistensi data.

  2. Langkah Pembuatan

    1. Identifikasi entitas utama.

    2. Tentukan atribut tiap entitas & tetapkan PK.

    3. Gambar relasi; tetapkan kardinalitas.

    4. Tambahkan entitas penghubung (jika M–N).

    5. Review dan validasi dengan stakeholder.

  3. Manfaat

    • Komunikasi jelas antara developer dan non-tech.

    • Basis data terstruktur, mudah dikembangkan dan dipelihara.

Rumus : 

Berikut “rumus” atau pola dasar relasi (kardinalitas) di ERD, lengkap dengan notasi dan cara implementasinya ke tabel–tabel database:


1. Kardinalitas & Notasi ERD

Tipe RelasiNotasi SingkatNotasi Min–MaxPenjelasan singkat
One-to-One1 : 1(1,1) – (1,1)Tiap A hanya punya satu B, dan sebaliknya.
One-to-Many1 : N(1,1) – (0,N)Satu A bisa punya banyak B; B hanya satu A.
Many-to-ManyM : N atau N : M(0,M) – (0,N)Banyak A bisa ke banyak B, dan sebaliknya.
  • Notasi Min–Max (min,max) menunjukkan banyaknya relasi minimal dan maksimal.

  • Contoh (1,1)–(0,N) artinya: setiap baris A wajib punya tepat 1 B; tiap baris B boleh 0 sampai N A.


2. “Rumus” Implementasi di Database

ERDTabel RelasionalKeterangan
1 : 1Tambah foreign key di salah satu tabel, + UNIQUEsql<br>CREATE TABLE KTP (no_ktp CHAR(16) PRIMARY KEY, nama VARCHAR(100));<br>CREATE TABLE Warga (id INT PRIMARY KEY, no_ktp CHAR(16) UNIQUE, FOREIGN KEY(no_ktp) REFERENCES KTP(no_ktp));
1 : NTambah foreign key di sisi Nsql<br>CREATE TABLE Kelas (id INT PRIMARY KEY, nama VARCHAR(50));<br>CREATE TABLE Siswa (id INT PRIMARY KEY, nama VARCHAR(100), id_kelas INT, FOREIGN KEY(id_kelas) REFERENCES Kelas(id));
M : NBuat tabel penghubung (associative)sql<br>CREATE TABLE Mahasiswa (id INT PRIMARY KEY, nama VARCHAR(100));<br>CREATE TABLE MataKuliah (kode CHAR(6) PRIMARY KEY, judul VARCHAR(100));<br>CREATE TABLE KRS (mhs_id INT, mk_kode CHAR(6), PRIMARY KEY(mhs_id,mk_kode), FOREIGN KEY(mhs_id) REFERENCES Mahasiswa(id), FOREIGN KEY(mk_kode) REFERENCES MataKuliah(kode));
  • One-to-One: FK + UNIQUE memastikan tiap nilai hanya muncul sekali.

  • One-to-Many: FK di tabel “many” menunjuk PK tabel “one”.

  • Many-to-Many: Tabel ketiga (KRS) membawa dua FK sebagai kombinasi PK.

versi cepat : 

4. Ringkasan “Rumus” Cepat

  1. 1 : 1 → FK + UNIQUE

  2. 1 : N → FK di sisi “N” (tanpa UNIQUE)

  3. M : N → Tabel penghubung dengan dua FK (gabungan PK)

  4. contoh :



0 komentar:

Posting Komentar