Primary Key, Foreign Key, Candidate Key, ERD, Mny-to-Many

1. Pengertian Primay Key

    Primary key adalah atribut atau umpulan atribut yang digunakan untuk mengidentifikasi setiap baris data dalam sebuah tabel secara  unik. Primary key berfngsi sebagai tanda pengenal dan ppenghubung antar tabel dalam suatu relational database. 

Contoh Penerapan Primary Key Dalam ERD

  • Tabel "Mahasiswa" 
            Primari Key : ID_Mahasiswa 
  • Tabel "Barang"
            Primary Key : Kode_Barang 
  • Tabel "Pegawai"
            Primary Key : NIP
  • Tabel "Transaksi"
            Primary Key : ID_Transaksi
  • Tabel "Karyawan"
            Primary Key :ID_Karyawan

2. Pengertian Foreign Key 

    Foreign key mmerupakan kumpulan atribut yang digunakan untuk menghubungkan antara dua tabel dalam database relational,  foreign key juga dikenal sebgai kunci tamu karena merupakan kunci yang terdapat pada tabel kedua atau child.

Contoh Penerapan foreign Key Dalam ERD

  • Hubungan antara tabel "pesanan" dan "pelanggan"
Dalam ERD tabel "Pesanan" dapat memiliki Foreign Key dalam bentuk atribut "ID_Pelanggan" yang mengarah pada Primary Key "ID_pelanggan" dalam tabel "Pelanggan". ini memungkinkan kita  untuk mengidentifikasi pelanggan yang melakukan pesanan tertentu. 

  • Hubungan antara tabel "Buku Pesanan" dan " Buku" 
    Dalam database e-commerce, tabel "Buku Pesanan" dapat  memilki foreign key berupa atribut "Kode-buku" yang mengacu pada Primary Key "Kode_Buku" di tabel "Buku". Ini berguna untuk menghubungkan setiap pesanan dengan buku-buku yang dipesan. 

  • Hubungan antara tabel "Transaksi" dan "Pelanggan"  
        Dalam ERD untuk sistem perbankan, tabel "transksi" dapat memiliki foreign key berupa atribut "ID_Pelanggan" yang mengacu pada primary key di tabel "pelanggan" . ini memungkinkan kita untuk mengetahui transaksi yang dilakukan oleh setiap pelanggan. 

  • Hubungan antara tabel "Karyawan proyek" dan "Karyawan"  
        Dalam ERD untuk sistem perbankan, tabel "Karyawan Proyek" dapat memiliki foreign key berupa atribut "ID_Karyawan" yang mengacu pada primary key di tabel "Karyawan" . ini berfungsi untuk menghubungkan karyawan dengan proyek yang mereka kerjakan.

  • Hubungan antara tabel "Pesawat" dan "Penerbangan"  
        Dalam ERD untuk sistem perbankan, tabel "Pesawat" dapat memiliki foreign key berupa atribut "ID_Penerbangan" yang mengacu pada primary key di tabel "Penerbangan " . ini membantu kita mengenali pesawat yang terlibat dalam setiap penerbangan.  

3. Pengertian Candidat Key 

    Candidate Key adalah sekelompok atribut yang dapat membedakan setiap baris data dalam sebuah tabel dengan cara unik. Candidate  key juga disebut kunci calon karena dapat dipilih untuk menjadi primary key. candidate key berfungsi sebagai identitas dan penghubung antara tabel-tabel dalam database. 


Contoh Penerapan Candidate Key Dalam ERD

  • Tabel "Mata Kuliah"
Tabel "Mata Kuliah" dalam sistem akademik memiliki dua Candidate Key : "kode_MataKuliah" dan "Nama_MataKuliah" keduanya bisa digunakan untuk mengiedentifikasi setiap mata kuliah secara unik.

  • Tabel "Karyawan"
Tabel "Karyawan" dalam manajemen SDM memiliki dua candidate key : "NIP" dan "Nomor_KTP". Keduanya dapat mengidentifikasi setiap karyawan secara unik. 

  • Tabel "Buku"
Tabel "Buku" dalam database perpustakaan memiliki tiga candidate key: " Kode_Buku" "Nomor_ISBN", dan "Judul_Buku". Semua atribut ini dapat mengidentifikasi setiap buku secara unik.

  • Tabel "Produk"
Tabel "Produk" dalam toko online memiliki dua candidate key : "Kode_Produk" dan "Nam_Produk". Keduanya bisa digunakan untuk mengidentifikasi setiap produk secara unik. 

  • Tabel "Pesawat"
Tabel "Pesawat" dalam sistem penerbangan memiliki da candidate key : "Nomor_Seri_Pesawat" dan "Nama_Produk". Keduanya dapat digunan untuk ,engidentifikasi setiap pesawat secra unik. 

4. Apa iti Relaton pada ERD 

Relation atau hubungan dalam ERD menggambarkan bagaimana entitas berinteraksi satu sama lain. Setiap hubungn di antara entitas menunjukan cara mereka saling terkait dan dapat terdiri dari satu atau lebih atribut.  hubungan ini dapat memiliki berbagai type, seperti one to one (1:1), one to many , atau many to many 

Mengapa Many-to Many Tidak Baik digunakan pada ERD 

  • Sulit mengelola data : Sulit untuk menentukan bagaimana cara menyimpan dan mengakses data tersebut 
  • Data yang Redudan : Hubungan M bisa menyebabkan data yang sama disimpan lebih dari sekali jadi buang-buang penyimpanan dan data jadi tidak konsisten. 
  • Query yang Rumit , ketika ambil data yg berhubungan dengan M, query yang dibuat jadi sulit. sehingga mempengaruhi kinerja database jadi lambat
  • Butuh tabel penghubung : untuk mengatasi masalah M, kita perlu membuat tabel penghubung , tabel ini akan memisahkan hubungan menjadi dua hubungna satu-ke-banyak(1 ), yang tentu saja menambah kompleksitas desain database 

Komentar

Postingan Populer