Entity Relationship Diagram (ERD) Entity Relationship Model Cara merepresentasikan Model Data dalam bentuk hubungan antar entitas. Komponen pembentuk Model Entity-Relationship : Entitas (Entity) : Merupakan individu yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain. Atribut (Attributes/Properties) Mendeskripsikan karakteristik (properti) dari Entitas. Relasi (Relationship) Menunjukkan adanya hubungan di antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Atribut entitas NIM NAMA ALAMAT 98.1.00 INDAH JL Gajah 1 98.1.00 2 BUDI Jl Durian NIM NAM A SISWA ALAMA T ENTITAS
Domain Satu domain adalah satu set dari nilai valid dari satu atribute. Karakteristik Domain Karakteristik Domain Contoh Tipe Data - Numerik - Karakter - Tanggal - Logika Panjang - 5 digit - 25 karakter Format - dd/mm/yy (tanggal/bulan/tahun) - nnn-nnnnnnn (format nomor telepon) Nilai Yang Boleh 0 < x <50 x adalah set nomor pegawai Status Atribut - PK ( Kunci Primer) - AK ( Kunci Alternatif) - FK (Kunci Tamu / Foreign Key) Keunikan - Unik - Tidak Unik Dukungan Kosong - Diperbolehkan Kosong - Tidak Diperbolehkan Kosong Nilai Default - Default = 0 - Default = 2 kali gaji - Default = tanggal dan jam sistem komputer Arti Nama untuk data barang
Contoh : Supplier KodeSup NamaSup p p S-01 B S-02 A Barang KodeBrg NamaBrg A01 TV 15 A02 TV 21 B02 Rice Cooker Nota NoNota KodeSup Tgl Total p N01 S-02 02/02/02 1500000 N02 S-01 07/02/02 33500000 Transaksi NoNota KodeBrg Kuantita Harga Jumlah s N01 B02 10 150000 1500000 N02 A01 10 1350000 13500000 N02 A02 10 2000000 20000000 Entity Supplier KodeSupp Tipe Data : Karakter Panjang : 4 Karakter Format : X-XXX Status Atribut : PK Keunikan : Unik Arti : Kode Supplier
NamaSupp Tipe Data : Karakter Panjang : 15 Karakter Keunikan : Tidak Unik Arti : Nama Supplier Entity Nota NoNota Tipe Data : Karakter Panjang : 3 Karakter Format : XXX Status Atribut : PK Keunikan : Unik Arti : Nomor Nota KodeSupp Tipe Data : Karakter Panjang : 4 Karakter Format : X-XX Status Atribut : FK Keunikan : Tidak Unik Arti : Kode Supplier Tgl Tipe Data : Date Format : tgl/bln/thn Arti : Tanggal Pengiriman Barang Total Tipe Data : Numerik Panjang : 10 digit Arti : Total Harga dari barang yang dikirimkan
Field / Atribut Kunci a. Candidate Key (Kunci Calon) Satu atribut atau satu set minimal atribut yang mengidentifikasikan secara unik suatu kejadian yang spesifik dari suatu entitas (calon primary key) Kunci kandidat harus unik / tidak boleh ganda Contoh : File pegawai dengan atribut NoInduk, NoKTP, Nama, TempatLahir, TanggalLahir, Alamat, Kota Kunci Kandidat : 1. NoInduk 2. NoKTP 3. Nama + TanggalLahir b. Primary Key Satu atribut atau satu set minimal atribut yang mengidentifikasikan secara unik suatu kejadian yang spesifik dari suatu entitas. Memilih satu dari kunci kandidat. Contoh : NoInduk c. Alternate Key (Kunci Alternatif) Kunci kandidat yang tidak dipakai sebagai primary key. Biasa digunakan sebagai kunci pengurutan dalam pembuatan laporan. d. Foreign Key (Kunci Tamu) Satu atribut atau satu set atribut yang melengkapi satu relationship (hubungan) yang menunjukkan ke induknya. Contoh : File Transaksi Pembelian dengan atribut : NoNota, KodeSupp, TglTransaksi, Jumlah Barang, NamaBarang NoNota = Primary key karena unik dan mewakili entitas
KodeSupp = Foreign Key karena menunjukkan ke file Induk Supplier Kardinalitas / Derajat Relasi Menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Kardinalitas Relasi yang terjadi di antara dua himpunan entitas ( misalnya A dan B ) dapat berupa : Satu ke Satu ( One to One ) Yang berarti setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, dan begitu juga sebaliknya. Pegawai memperoleh 1 1 Rumah Dinas Satu ke Banyak ( One to Many ) Yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A. Departemen memiliki 1 m Staff Banyak ke Banyak (Many to Many) Yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, dan demikian juga sebaliknya. Siswa m mengambil n Mata Kuliah
Derajat Minimum Maksimum Notasi Grafis Tepat satu (Satu dan hanya satu) 1 1 atau Nol atau satu 0 1 Satu atau lebih 1 Banyak (>1) Nol, satu atau lebih 0 Banyak (>1) Lebih dari satu >1 >1
Memasang Kunci Relasi 1. Satu ke Satu Kunci Relasi diletakkan pada salah satu entitas (A) yang diambil dari primary key entitas yang lain (B) Pegawai nip Nama koderumah P001 Iwan R02 P002 Ana R03 P003 Budi R01 Rumah Dinas koderumah Alamat rumah R01 Jl Mawar 1 R02 Jl Mawar 2 R03 Jl Mawar 3 Kunci Relasi Diagram ER Pegawai Nip (PK) Nama Koderumah (FK) memperoleh Rumah Dinas Koderumah (PK) Alamat rumah
2. Satu ke Banyak Kunci relasi diletakkan pada entitas banyak yang diambil dari primary key entitas satu Staff NIP Nama KodeDep Departemen t KodeDe NamaDep P00 Iwan 2 pt t 1 1 Akuntansi P00 Ana 1 2 Personali 2 a P00 Nina 1 3 Penjualan 3 P00 Rudi 2 4 P00 Deni 3 Kunci Relasi 5 Diagram ER Departemen KodeDept (PK) NamaDept memiliki Staff NIP (PK) Nama KodeDept (FK)
3. Banyak ke Banyak membuat entitas baru (entitas asosiatif / assosiative entity) yang berisi primary key dari masing-masing entitas Siswayang berelasi NIM Nam Alamat Mata Kuliah a KodeMK Nama NS001 Indra Jl Mangga MataKuliah 1 MK001 Bhs Inggris NS002 Nina Jl Melati 2 MK002 Matematika NS003 Andi Jl Duku 3 MK003 Statistik NS004 Ani Jl Mawar 5 MK004 Akuntansi Ambil MataKuliah NIM KodeM K NS001 MK001 NS001 MK002 NS001 MK004 NS003 MK002 NS003 MK004 NS004 MK001 NS004 MK003 Entitas Asosiatif Diagram ER Siswa NIM (PK) Nama ALamat mengambil AmbilMataKuliah NIM KodeMK Mata Kuliah KodeMK (PK) Nama MataKuliah memiliki