Selasa, 15 Oktober 2024

Entity Relationship Diagram

 

1. Primary Key (PK)

Primary Key adalah atribut atau sekumpulan atribut yang digunakan untuk mengidentifikasi secara unik setiap baris dalam tabel. Setiap tabel harus memiliki Primary Key dan nilainya tidak boleh duplikat atau kosong (NULL).

Contoh Primary Key dalam ERD:

  • Mahasiswa: NIM (Nomor Induk Mahasiswa)
  • Karyawan: NIK (Nomor Induk Karyawan)
  • Buku: ISBN (International Standard Book Number)
  • Order: Nomor_Pesanan
  • Mobil: Nomor_Plat

2. Foreign Key (FK)

Foreign Key adalah atribut di dalam suatu tabel yang merujuk kepada Primary Key di tabel lain. Foreign Key digunakan untuk menjalin hubungan antara dua tabel.

Contoh Foreign Key dalam ERD:

  • Mahasiswa: Kode_Jurusan (merujuk ke tabel Jurusan)
  • Transaksi: ID_Pelanggan (merujuk ke tabel Pelanggan)
  • Kelas: NIM (merujuk ke tabel Mahasiswa)
  • Pesanan: Kode_Produk (merujuk ke tabel Produk)
  • Pembayaran: ID_Pesanan (merujuk ke tabel Pesanan)

3. Candidate Key

Candidate Key adalah atribut atau sekumpulan atribut yang dapat digunakan sebagai Primary Key, tetapi hanya satu yang akan dipilih sebagai Primary Key. Candidate Key harus memiliki sifat unik dan tidak boleh NULL.

Contoh Candidate Key dalam ERD:

  • Mahasiswa: NIM, Nomor_HP, Email
  • Karyawan: NIK, Nomor_KTP, Email
  • Buku: ISBN, Judul, Nomor_Rak
  • Order: Nomor_Pesanan, Nomor_Invoice
  • Mobil: Nomor_Plat, Nomor_Chassis

Apa itu Relasi pada ERD?

Dalam Entity Relationship Diagram (ERD), Relasi (Relationship) menghubungkan dua atau lebih entitas untuk menunjukkan bagaimana mereka berinteraksi satu sama lain. Relasi menggambarkan logika bisnis yang ada di antara berbagai entitas dalam sistem, seperti bagaimana entitas "Mahasiswa" berhubungan dengan entitas "Kelas", atau bagaimana "Pelanggan" terhubung dengan "Pesanan".

Relasi di ERD juga menunjukkan kardinalitas, yaitu jumlah maksimum dan minimum entitas yang dapat berpartisipasi dalam hubungan tersebut. Kardinalitas sering dijelaskan dalam tiga bentuk:

  1. One-to-One (1:1): Satu entitas pada tabel A hanya berhubungan dengan satu entitas di tabel B, dan sebaliknya.
  2. One-to-Many (1
    )
    : Satu entitas pada tabel A bisa berhubungan dengan banyak entitas di tabel B, tetapi setiap entitas di tabel B hanya berhubungan dengan satu entitas di tabel A.
  3. Many-to-Many (M
    )
    : Banyak entitas pada tabel A bisa berhubungan dengan banyak entitas di tabel B.

Mengapa Many-to-Many tidak baik digunakan pada ERD?

Relasi Many-to-Many (M) di dalam ERD secara umum tidak disarankan karena bisa menyebabkan redundansi data dan masalah integritas. Masalah utama dengan M

adalah bahwa sulit untuk mengelola dan memelihara data dalam relasi langsung di antara dua tabel tanpa melibatkan tabel tambahan. Oleh karena itu, hubungan Many-to-Many biasanya dipecah menjadi dua hubungan One-to-Many melalui penggunaan tabel asosiasi (junction table).

Alasan Many-to-Many tidak ideal:

  1. Duplikasi data: Dalam hubungan M

    , banyak pasangan entitas dari dua tabel yang bisa diulang-ulang, sehingga mengakibatkan redundansi atau duplikasi data yang tidak efisien.

  2. Kesulitan dalam pemeliharaan: Membuat, menghapus, atau memperbarui data bisa menjadi lebih rumit karena beberapa entitas di satu tabel mungkin terkait dengan beberapa entitas di tabel lainnya.

  3. Masalah integritas data: Sulit untuk menjamin integritas referensial (foreign key constraint) jika dua tabel berhubungan langsung dalam skema M

    tanpa tabel perantara.

  4. Keterbatasan operasi query: Query database untuk Many-to-Many bisa lebih kompleks, terutama saat ingin melakukan operasi CRUD atau agregasi.

Tidak ada komentar:

Posting Komentar

MEMBUAT TABEL YANG BERISI 1000 BARIS DATA