DBMS - Representasi Diagram ER
Assalamualaikum, para desainer basis data yang sedang berkembang! Hari ini, kita akan melihat dunia yang menakjubkan Diagram Entity-Relationship (ER). Sebagai guru ilmu komputer yang ramah di lingkungan sekitar Anda, saya di sini untuk mengarahkan Anda melalui konsep penting ini dalam desain basis data. Jangan khawatir jika Anda belum pernah mengprogram sebelumnya - kita akan mulai dari dasar dan naik tingkat per tingkat. Jadi, ambil secangkir kopi (atau teh, jika itu hal Anda), dan mari kita mulai!
Entitas
Apa Itu Entitas?
Entitas seperti halnya "sesuatu" atau "objek" dalam dunia nyata yang kita inginkan untuk menyimpan informasi tentang basis data kita. Pensejukkan hal ini seperti kata benda dalam kalimat. Misalnya, dalam basis data sekolah, kita mungkin memiliki entitas seperti "Murid," "Guru," atau "Kursus."
Bagaimana Menyajikan Entitas dalam Diagram ER
Dalam diagram ER, kita menyajikan entitas sebagai kotak persegi panjang dengan nama entitas di dalamnya. Itu saja!
+---------+
| Murid |
+---------+
Dalam contoh ini, "Murid" adalah entitas kita. Mudah-mudahan, kan?
Entitas Kuat vs Entitas Lemah
Sekarang, mari kita tambahkan sedikit perisa. Kita memiliki dua jenis entitas:
- Entitas Kuat: Ini adalah entitas yang dapat ada sendiri. Hal ini seperti superhero yang tidak memerlukan teman seperjuangan.
- Entitas Lemah: Entitas ini bergantung pada entitas lain untuk ada. Hal ini lebih seperti Robin kepada Batman.
Dalam diagram ER, kita menyajikan entitas lemah dengan kotak ganda:
+===========+
| Alamat |
+===========+
Di sini, "Alamat" mungkin adalah entitas lemah karena itu bergantung pada entitas "Murid" atau "Guru" untuk ada.
Atribut
Apa Itu Atribut?
Atribut adalah karakteristik atau properti dari entitas. Jika entitas adalah kata benda, think of attributes as the adjectives that describe it. For our "Student" entity, attributes might include "Name," "Age," "Student ID," etc.
Jenis Atribut
mari kitauraikan jenis-jenis atribut yang berbeda:
Tipe Atribut | Deskripsi | Representasi |
---|---|---|
Sederhana | Nilai tunggal, tak dapat dibagi | Oval terhubung ke entitas |
Komposit | Dapat dibagi menjadi subbagian yang lebih kecil | Oval dengan oval terhubung |
Multi-nilai | Dapat memiliki nilai ganda | Oval ganda |
Diterima | Nilai dihitung dari atribut lain | Oval Bergaris |
Kunci | Mengidentifikasi secara unik instance entitas | Oval di bawah garis |
Menyajikan Atribut dalam Diagram ER
mari kita lihat bagaimana ini terlihat dalam diagram ER:
(Nama)
|
(Umur)
|
+--------+ (ID Murid)
|Murid |------(Alamat)
+--------+ |
((Nomor Telepon))
|
/(IPK)\
Dalam diagram ini:
- "Nama," "Umur," dan "Alamat" adalah atribut sederhana
- "ID Murid" adalah atribut kunci (perhatikan garis bawah)
- "Nomor Telepon" adalah multi-nilai (perhatikan oval ganda)
- "IPK" adalah atribut diterima (perhatikan oval bergaris)
Hubungan
Apa Itu Hubungan?
Hubungan adalah koneksi antara dua atau lebih entitas. Hal ini seperti kata kerja dalam kalimat, menjelaskan bagaimana entitas berinteraksi satu sama lain. Misalnya, seorang Murid "mendaftar" dalam Kursus.
Menyajikan Hubungan dalam Diagram ER
Kita menyajikan hubungan sebagai bentuk permata di diagram ER, terhubung ke entitas yang berhubungan dengan garis.
+---------+ +-----------+
| Murid |--------| Mendaftar |-------- | Kursus |
+---------+ +-----------+ +--------+
Kardinalitas dalam Hubungan
Kardinalitas memberitahu kita berapa banyak instance satu entitas dapat dihubungkan dengan entitas lain dalam hubungan. Hal ini seperti kelebihan dalam UML, jika Anda familiar dengan itu.
Kita memiliki beberapa jenis kardinalitas:
- Satu-ke-Satu (1:1)
- Satu-ke-Banyak (1:N)
- Banyak-ke-Satu (N:1)
- Banyak-ke-Banyak (M:N)
mari kita lihat bagaimana kita menyajikan ini:
// Satu-ke-Satu
+---------+ +-----------+ +---------+
| Murid |--------| Memiliki |--------| Alamat |
+---------+ +-----------+ +---------+
| |
1 1
// Satu-ke-Banyak
+---------+ +-----------+ +---------+
| Guru |--------| Mengajar |--------| Kursus |
+---------+ +-----------+ +---------+
| |
1 N
// Banyak-ke-Banyak
+---------+ +-----------+ +---------+
| Murid |--------| Mendaftar |--------| Kursus |
+---------+ +-----------+ +---------+
| |
M N
Batasan Partisipasi
Batasan partisipasi memberitahu kita apakah semua instance entitas harus ikut serta dalam hubungan. Kita memiliki dua jenis:
- Partisipasi Total: Semua instance harus ikut serta (diwakili oleh garis ganda)
- Partisipasi Sebagian: Beberapa instance mungkin tidak ikut serta (diwakili oleh garis tunggal)
Ini adalah contoh:
+---------+ +-----------+ +---------+
| Murid |========| Mendaftar |--------| Kursus |
+---------+ +-----------+ +---------+
Dalam diagram ini, garis ganda menunjukkan bahwa semua murid harus mendaftar dalam kursus (partisipasi total), sedangkan garis tunggal menunjukkan bahwa tidak semua kursus harus memiliki murid mendaftar (partisipasi sebagian).
Dan itulah, teman-teman! Kita telah menutupi dasar representasi Diagram ER. Ingat, latihan membuat Diagram ER menjadi sempurna. Cobalah membuat Diagram ER untuk sistem yang Anda kenal - mungkin sistem perpustakaan sekolah Anda atau layanan pengiriman pizza lokal. Semakin banyak Anda latihan, semakin naturalnya akan menjadi.
Sementara kita menyusun, saya teringat cerita lucu dari hari teaching awal saya. Pernah sekali saya punya murid yang menggambar diagram ER keseluruhan nya menggunakan emoji instead of shapes. Meskipun kreatif, itu bukanlah notasi standar - tapi itu membuat pengalaman penilaian yang tak terlupakan!
Terus jelajah, terus bertanya, dan yang paling penting, bersenang-senang dengan desain basis data. Sampai jumpa lagi, selamat menggambar diagram!
Credits: Image by storyset