E-R Model (Model Keterhubungan Entitas) Semesta data di dunia nyata ditansformasikan ke dalam sebuah diagram dengan memanfaatkan perangkat konseptual disebut dengan ERD (Entity Relationship Diagram). Simbol / Notasi E-R Diagram : Identifying Relationship
Strong Entity
Attribute
Weak Entity Relationship Associative Entity
Multivalued Attribute Derived Attribute
Link
Database System Concepts
1.1
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Entity (Entitas) Merupakan individu yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lainnya (individu : manusia, tempat, obyek, kejadian, konsep). Biasanya berhub. Dg baris dlm sebuah tabel).
Entity Sets (Himpunan Entitas) : Sekelompok entitas yang sejenis dan berada dalam lingkup yang sama
Contoh : Himpunan Entitas : Pelanggan Entitas : Budiman, Suherman dll
Himpunan Entitas : Mobil Entitas : Mobil Suzuki, Mobil Honda dll Himpunan Entitas : Mahasiswa Entitas : Ali, Budi, Iman dll
Database System Concepts
1.2
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Contoh : Analogi
NIM 980001 980002 980003 980004
Nama Mahasiswa Ali Akbar Budi Haryanto Imam Faisal Indah Susanti
Alamat
Tgl Lahir
Jl. Merdeka No. 10 Jakarta 40121 Jl. Gajah Mada No. 2 Jakarta Komp. Griya Asri D-2 Depok 40151 Jl. Adil No. 123 Bogor
2 Jan 1979 6 Okt 1978 13 Mei 1978 21 Juni 1979
Entitas 1 Entitas 2 Entitas 3 Entitas 4
Himpunan Entitas
Database System Concepts
1.3
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Atribut (attribute / Properties)
Merupakan karakteristik dari sebuah entitas (biasanya berhubungan dengan field dalam sebuah tabel). Penentuan atribut bagi suatu entitas didasarkan pada relevansinya terhadap entitas tersebut.
Atribut Kunci / Identifikasi : Merupakan atribut pengidentifikasi entitas yang paling unik untuk semua entitas dalam himpunan entitas Contoh : Atribut NIM pada Himp. Entitas mahasiswa
Atribut Deskriptif :
Merupakan atribut lain selain atribut kunci yang befungsi sebagai penjelasan terhadap entitas dalam himpunan entitas
Contoh : Atribut nama, alamat, tgl_lahir pada Himp. Entitas MHS
Database System Concepts
1.4
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Ada tiga macam kunci : ® Superkey
Adalah satu / lebih atribut yg dapat membedakan entitas satu dengan lainnya dalam himp entitas
® Candidate Key
Merupakan kumpulan atribut minimal yang dapat membeda kan entitas satu dengan lainnya dalam himp entitas.
® Primary Key
Salah satu dari candidate key yang digunakan sebagi peng identifikasi suatu entitas dalam himp entitas.
Database System Concepts
1.5
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Contoh : No_KTP No_SIM Nama Alamat
superkey
Superkey : No_KTP+No_SIM+Nama+Alamat No_KTP+No_SIM+Nama No_KTP+No_SIM No_KTP No_SIM
Candidate Key
Primary Key
Candidate Key: No_KTP No_SIM
Database System Concepts
1.6
Primary Key: No_KTP atau No_SIM tergantung kebutuhan
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Dasar pemilihan Primary Key :
1. Key sering digunakan sebagai acuan 2. Key lebih ringkas 3. Key adalah unik jalan
kota
kpos
Atribut Sederhana (Simple Attribute) : atribut atomik yg tidak dapat di pilah lagi
Atribut Komposit (Composite Attribute) : atribut yg dapat di pilah lagi
Contoh : Atribut nama : atribut sederhana (nilai sudah paling kecil / atomik) Atribut alamat : atribut komposit, karena masih dapat dipilah-pilah lagi menjadi atribut : jalan, kota dan kode_pos
Database System Concepts
1.7
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Atribut bernilai banyak (multivalued attribute) :
Merupakan atribut yang dapat bernilai lebih dari 1 nilai yang sejenis
Atribut bernilai tunggal (Single-valued attribute) : Merupakan atribut yang hanya mempunyai satu nilai
Contoh : NIM Nama Alamat 98001
Rudi
98002
Wati
jalan
kota
kpos
Hobi
Jl. Seroja
Renang Nonton Dago Raya Tidur
hobi
NIM, Nama dan Alamat : atribut bernilai tunggal Hobi : atribut bernilai banyak Database System Concepts
1.8
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Atribut Turunan (Derived attribute) : Merupakan atribut yang nilainya diperoleh dari pengolahan atau diturunkan dari atribut / tabel lain
Contoh :
NIM Nama Alamat Angkatan IPK 98001 Andi 99011 Susi
Jl. X Jl. Y
1998 1999
3.2 3.0
Angkatan, IPK : Atribut turunan
Atribut harus bernilai (Mandatory Attribute) : Merupakan atribut-atribut yang harus diisikan nilainya Atribut tidak harus bernilai (Non Mandatory Attribute / Null) : Merupakan atribut-atribut yang nilainya boleh dikosongi
Database System Concepts
1.9
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas)
Database System Concepts
1.10
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Relasi (Relationship) : Digunakan untuk menunjukan hubungan antar entitas
Himpunan Relasi (Relationship Sets) : Merupakan kumpulan semua relasi diantara entitas
Contoh :
Mahasiswa
NIM
Nama ...
Mata Kuliah
Kode_kul Nama_kul
98001 Andi ... 98003 Rudi ... 98013 Susi ...
A01 A03 A02
Pancasila Internet I Network I
sks
2 2 2
Dari tabel-tabel diatas, dapat dilihat bahwa terdapat hubungan / relasi antara himp entitas mahasiswa dengan mata kuliah. --> Andi mempelajari mata kuliah Internet I
--> Rudi mempelajari mata kuliah Internet I dan Network I
Database System Concepts
1.11
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Sehingga apabila dimodelkan dengan E-R Diagram :
Mahasiswa
Mempe lajari
Mata kuliah Kode_kul
NIM
Nama
Nama_kul sks
Database System Concepts
1.12
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas)
Kardinalitas / Derajad Relasi :
Merupakan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himp entitas yang lain.
Macam-macam Kardinalitas :
Satu ke satu (one to one)
Entitas 1 Entitas 2 Entitas 3 Entitas 4
A
Database System Concepts
Entitas 1 Entitas 2 Entitas 3 Entitas 4
Setiap entitas pada himp entitas A Berhubungan dengan paling banyak Dengan satu entias pada himpunan Entitas B dan begitu juga sebaliknya
B
1.13
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Contoh :
Nama-Dosen
Dosen
Kode
alamat 1
1
Menge palai Nama-Dosen
Nama_prog
Progdi
Kode
Satu dosen paling banyak mengepalai satu program studi (walaupun tidak semua dosen menjadi ketua) dan setiap program studi di kepalai oleh paling banyak satu dosen.
Database System Concepts
1.14
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas)
Satu ke banyak (one to many)
Entitas 1 Entitas 2 Entitas 3 Entitas 4
A Contoh :
Database System Concepts
Setiap entitas pada himp entitas A Berhubungan dengan banyak entias pada himpunan entitas B, tetapi Tidak sebaliknya
Entitas 1 Entitas 2 Entitas 3 Entitas 4
B Setiap agama dapat dianut oleh lebih dari satu mahasiswa, tetapi tidak sebaliknya (setiap mahasiswa hanya dapat menganut satu agama)
1.15
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Contoh : Kode_agm
Agama
1
NIM
dianut
N
Mahasiswa NIM
Kode_agm
Nama
Deskripsi
Semester
Database System Concepts
1.16
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas)
banyak ke banyak (many to many)
Entitas 1 Entitas 2 Entitas 3 Entitas 4
A Contoh :
Database System Concepts
Setiap entitas pada himp entitas A Berhubungan dengan banyak entias pada himp entitas B, dan sebaliknya
Entitas 1 Entitas 2 Entitas 3 Entitas 4
B Setiap dosen dapat mengajar lebih dari satu mata Kuliah dan setiap mata kuliah dapat diajar oleh lebih Dari satu dosen
1.17
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Contoh :
Nama_dos
Dosen
N
kode-_kuliah
Mengajar
Nama_dos Alamat_dos
N
Mata Kuliah Kode_kuliah
waktu
Nm_kuliah
tempat SKS
Database System Concepts
1.18
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Tahapan pembuatan E-R Diagram :
Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat Menentukan atribut-atribut kunci dari masing-masing himpunan entitas Mengidentifikasi dan menetapkan seluruh himpunan relasi di antara himpunan entitas – himpunan entitas yang ada beserta foreign key (kunci tamu) Menentukan derajad / kardinalitas relasi untuk setiap himpunan entitas Melengkapi himpunan entitas dan himpunan relasi dengan atribut-atribut deskriptif
Database System Concepts
1.19
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) ERD dengan kamus data : Pada sebuah sistem yang kompleks, penggambaran atribut-atribut dalam sebuah ERD seringkali kelihatan lebih rumit. Untuk itu pendeklarasian atribut-atribut tersebut dapat menggunakan kamus data.
Contoh :
Dosen
N
N Mengajar
Mata Kuliah
Kamus Data :
Dosen = {Nama_dos, Alamat_dos} Mengajar = {Nama_dos, KD_kuliah, Waktu, Tempat, Ruang } Mata Kuliah = {Kd_kuliah, Nm_kuliah, SKS}
Database System Concepts
1.20
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Derajad Relasi Minimum :
Menunjukan hubungan (korespondensi) minimum yang boleh terjadi dalam suatu relasi antar himpunan entitas. Nilai derajad relasi minimum hanya boleh 0 atau 1.
Contoh :
minimum
Mahasisa
maksimum (0,N)
Mempela jari
(0,N)
Mata Kuliah
® Setiap mahasiswa dapat mempelajri banyak mata kuliah tetapi ada mahasiswa yang belum / tidak mempelajari mata kuliah satupun. ® Setiap mata kuliah dapat dipelajari oleh banyak mahasiswa, tetapi bisa juga ada mata kuliah yang tidak / belum diikuti oleh satupun mahasiswa
Database System Concepts
1.21
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas)
ERD dalam Notasi Lain : Notasi : Notasi
o
o
Database System Concepts
Derajad Relasi Minimum - Maksimum
atau atau atau atau
(0,N) (1,N) (1,1) (0,1)
o
o
1.22
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas)
Contoh :
Mahasisa
o
Mempela jari
o
Mata Kuliah
Kamus Data :
Mahasiswa = {NIM, Nama, Alamat} Mempelajri = {NIM, KD_kuliah, Waktu, Tempat, Ruang } Mata Kuliah = {Kd_kuliah, Nm)kuliah, SKS}
Database System Concepts
1.23
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Varian Entitas : Strong Entity (entitas kuat) Himpunan entitas yg tidak memiliki ketergantungan dg entitas yang lain.
Weak Entity (entitas Lemah) Himpunan entitas yg keberadaannya tergantung dengan entitas yang lain. Himpunan entitas yg demikian tidak memp. Atribut yg berfungsi sebagai key yg benar-benar menjamin keunikan entitas.
Database System Concepts
1.24
©Silberschatz, Korth and Sudarshan
Entitas lemah (Weak Entity Sets) n Entitas lemah disimbolkan dengan persegi panjang double.
n discriminator dari entitas lemah ditandai dengan garis bawah
terputus. n payment-number – discriminator dari entitas lemah payment n Primary key dari payment – (loan-number, payment-number)
Database System Concepts
1.25
©Silberschatz, Korth and Sudarshan
Entitas lemah (Weak Entity Sets) n Catatan : Kunci utama dari entitas kuat tidak secara eksplisit
menjadi kunci utama entitas lemah, hal tersebut hanya berlaku selama ada relasi. n Jika loan-number secara eksplisit menggantikan, payment dapat
menjadi entitas kuat, tetapi kemudian antara payment dan loan akan menjadi duplikasi dengan atribut loan-number yang menggabungkan payment dan loan n
Entita dimana entitas lemah bergantung disebut identifying owner. Entitas lemah tidak memiliki identifier sendiri tetapi memiliki atribut yang berperan sebagai partial identifier ( identifier yang berfungsi secara sebagian)
Database System Concepts
1.26
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Contoh :
memiliki
NIM Nama
Orang Tua
NIM
Nm_ortu
1
Tgl_lhr
Menye
n
nangi NIM
Database System Concepts
NM_ortu alm_ortu
1
Mahasiswa alamat
1
hobbi
1.27
Hobbi
Hobbi
Kunci utama
Kunci yg tidak menyakinkan
©Silberschatz, Korth and Sudarshan
Entitas Asosiatif (Associative Entity Sets) yaitu entitas yang terbentuk dari suatu relasi. Entitas asosiatif bisa terjadi jika relasi yang merekatkan dua entitas bersifat banyak ke banyak . Hubungan banyak-ke-banyak sebaiknya dikonversi menjadi Entitas Asosiatif. Hubungan Ternary sebaiknya dikonversi menjadi Entitas Asosiatif Misalnya : pengiriman, jadwal, delivery order
Database System Concepts
1.28
©Silberschatz, Korth and Sudarshan
Entitas Asosiatif (Associative Entity Sets) Contoh :
Supplier
Detail Pasokan
Gudang
Barang
Database System Concepts
1.29
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Varian Relasi :
Relasi Tunggal (Unary Relation)
Relasi yang terjadi dari antar himpunan entitas yg sama
Contoh : 1 kode_dos
Nama_dos
kode_dos
Mendam pingi
Dosen
keahlian
N Database System Concepts
1.30
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Relasi Ganda (Redundant Relation)
Contoh : Nm_dos
Kd_kul
Meng ajar
1 Dosen
tempat
N waktu
N
Kuliah
N Meng uasai Nm_dos
Database System Concepts
Kd_kul
1.31
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Relasi Multi Entitas (N-ary / Ternary Relation)
Merupakan relasi yang terdiri dari 3 himpunan entitas / lebih
Contoh : Nama_dos
Kd_kul
Penga jaran
Kuliah
nm_kul
Nama_dos
waktu
Kd_rg
Kd_kul
Dosen
Kd_rg
Ruang
sks
Nm_rg kap
Database System Concepts
1.32
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Spesialisasi : Merupakan proses dekomposisi (pengelompokkan) sebuah himpunan entitas yg melahirkan himpunan entitas baru yang dilakukan secara top-down. Proses perancangan Top down; Membuat sub-grup dari entitas
sehingga menjadi berbeda dengan entitas yang lain. Hasil dari sub grouping adalah entitas tingkat rendah dimana
salah satu atribut sebagai relasi dengan entitas diatasnya. Digambarkan dengan segitiga dan diberi label ISA (Mis.
Pelanggan “is a” Manusia).
Database System Concepts
1.33
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Contoh 1 :
Kode_dos Nama_dos
dosen nik
alm_kantor
Dosen tetap
Database System Concepts
alm_dos Nm_kantor
Is a
pangkat
Top - down
Dosen ttd tetap
1.34
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Contoh 2 :
Database System Concepts
1.35
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Generalisasi : Merupakan penyatuan beberapa himpunan entitas menjadi sebuah himpunan entitas baru. Atribut dari masing-masing himpunan entitas disatukan kedalam himpunan entitas baru. Proses perancangan bottom-up – menggabungkan beberapa
entitas yang mempunyai atribut yang sama menjadi entitas yang lebih tinggi tingkatnya. Spesialisasi dan generalisasi adalah upaya penyederhanaan;
dan dapat digambarkan dengan ERD. Peristiwa spesialisasi dan generalisasi dapat diterapkan
bolak-balik.
Database System Concepts
1.36
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas)
Contoh :
Mahasiswa
bottom - up
Is a Mahasiswa D3
Database System Concepts
Mahasiswa S1
1.37
©Silberschatz, Korth and Sudarshan
Spesialisasi dan Generalisasi Pada sebuah entitas dapat dilakukan spesialisasi bertingkat
tergantung dari kompleksitas entitas tersebut. Mis. Karyawan_tetap vs. karyawan_tidak_tetap, dapat dibagi lagi
berdasar pekerjaannya officer vs. sekretaris vs. teller Setiap bagian dari karyawan dapat menjadi :
Anggota dari karyawan_tetap atau karyawan _tidak_tetap,
Dan juga anggota dari officer, sekretaris atau teller Realisasi ISA adalah relasi superclass - subclass
Database System Concepts
1.38
©Silberschatz, Korth and Sudarshan
Batasan perancangan dalam Spesialisasi/Generalisasi Batasan sebuah entitas dapat menjadi anggota suatu entitas
lain yang lebih tinggi. Tergantung dari keadaan Mis. Semua pelanggan yang berusia diatas 65 tahun anggota entitas manusia_sepuh; manusia_sepuh ISA manusia. Tergantung user n Batasan apakah entitas dimiliki oleh lebih dari satu entitas
tingkat rendah dengan sebuah generalisasi. Disjoint Sebuah entitas dapat dimiliki oleh hanya satu entitas tingkat rendah Dalam diagram E-R tulis disjoint setelah segitiga ISA Overlapping Sebuah entitas dapat dimiliki oleh lebih dari satu entitas tingkat rendah
Database System Concepts
1.39
©Silberschatz, Korth and Sudarshan
Batasan perancangan dalam Spesialisasi/Generalisasi Batasan kelengkapan – spesifikasi apakah sebuah entitas
merupakan entitas tingkat tinggi atau tidak harus dimiliki oleh satu atau lebih entitas yang lebih rendah dalam relasi generalisasi. total : sebuah entitas harus dimiliki oleh satu atau lebih entitas tingkat rendah Partial (sebagian): sebuah entitas tidak harus dimiliki oleh salah satu entitas tingkat rendah
Database System Concepts
1.40
©Silberschatz, Korth and Sudarshan
E-R Model (Model Keterhubungan Entitas) Agregasi :
Merupakan sebuah relasi yang secara kronologis mensyaratkan telah adanya relasi lain.
Contoh : Mahasiswa
NIM Nama
NIM Kd_rg Kd_rg
Database System Concepts
N
mempelajari
N
Kuliah
Kd_kul
nm_kul
N mengikuti
Kd_kul nilai
N Praktikum
1.41
Nama_pr
©Silberschatz, Korth and Sudarshan
Agregasi Sehubungan dengan relasi ternary works-on, seperti pada contoh
dibawah Seandainya kita ingin mengetahui manajer dari seorang karyawan
di sebuah cabang
Database System Concepts
1.42
©Silberschatz, Korth and Sudarshan
Agregasi Relasi works-on dan manages menyajikan informasi yang tumpang
tindih Setiap relasi manages berhubungan dengan sebuah relasi pada works-on
Sementara itu, beberapa relasi works-on mungkin tidak berhubungan dengan relasi manages Kita dapat membuang relasi works-on Hilangkan kerangkapan dengan agregasi
Anggap sebuah relasi dan entitas yang berelasi adalah sebuah entitas Buat relasi dengan entitas lain Tanpa mengenalkan istilah kerangkapan, diagram tersebut dapat
diubah: Seorang karyawan bekerja di sebuah bagian di suatu cabang
Seorang karyawan , cabang, bagian dapat digabungkan dengan seorang manajer
Database System Concepts
1.43
©Silberschatz, Korth and Sudarshan
Diagram E-R dengan Agregasi
Database System Concepts
1.44
©Silberschatz, Korth and Sudarshan
Diagram E-R Diagram untuk Bank
Database System Concepts
1.45
©Silberschatz, Korth and Sudarshan
Exercise Consider a university database for the scheduling of classrooms for final exams. This database could be modeled as the single entity set exam, with attributes course_number, section_number, room_number and time. Alternatively, one or more additional entity sets could be defined, along with relationship sets to replace some of the attributes of the exam entity set, as ☻ course with attributes name, department, and course_number ☻ section with attributes section_number and enrollment, and dependent as a weak entity set on course ☻ room with attributes room_number, capacity and building Show an E-R Diagram illustrating the use of all three additional entity sets listed.
Database System Concepts
1.46
©Silberschatz, Korth and Sudarshan