Basis Data Model E‐R (Lanjutan) By Imana Malia Kondou
[email protected]
1
Konsep Foreign Key • Foreign key adalah kolom yang diambil dari primary key entitas lain yang menggunakan hubungan antar 2 tabel tsb. Fakta Adi, Budi dan Cici bekerja pada bagian Persinalia. Sedangkan Rudi dan Santo bekerja pada bagian Gudang Dari fakta diatas dan panah relasi sebelah kiri, bagaimana cara menuliskan data yang menunjukkan hubungan/relasi antar tabel pegawai dan departemen?
[email protected]
Partisipasi Entitas pada Relasi (Participation Constraint) • Menjelaskan apakah keberadaan suatu entity tergantung pada hubungannya dengan entity lain . • Terdapat 2 macam Participation Constraint : – Total Participation Total Participation • Keberadaan suatu entity tergantung pada hubungannya dengan entity lain atau setiap entitas berpartisipasi paling sedikit satu dalam relasi Participation loan di borrower : total Æ Setiap loan pasti mempunyai customer Setiap loan pasti mempunyai customer • Participation loan di borrower : total Æ yang dihubungkan via borower
– Partial Participation • Keberadaan Keberadaan suatu entity tidak tergantung pada hubungannya dengan entity lain suatu entity tidak tergantung pada hubungannya dengan entity lain atau beberapa entitias boleh tidak berpartisipasi dalam relasi. • Participation customer di borower : partial
Notasi Alternatif untuk batasan Cardinalitas
[email protected]
Derajat Relasi Minimum Menunjukkan hubungan (korespondensi) minimum y g yang boleh terjadi dalam sebuah relasi antar entitas. j Notasi (x,y) pada relasi menunjukkan derajat minimum (x) dan derajat maksimum (y) pada sebuah relasi Partisipasi total bisa dinotasikan dengan memberikan lb d k d b k derajat relasi minimum (x) = 1
Contoh: pada relasi “bekerja untuk” pada entitas pegawai terhadap departemen Derajat relasi minimumnya adalah satu
[email protected]
Notasi lain untuk relasi Notasi lain untuk relasi
[email protected]
Macam relasi Macam relasi • • • •
relasi Biner (binary relation) relasi Biner (binary relation) relasi tunggal (unary relation) relasi Multi entitas (n‐ary relation) l i li i ( l i ) relasi ganda (redundant relation)
[email protected]
Relasi Biner (Binary Relation) Relasi Biner (Binary Relation) Merupakan relasi yang terbentuk antar 2 buah Merupakan relasi yang terbentuk antar 2 buah entitas Contoh:
relasi “bekerja pada” pada entitas pegawai terhadap entitas tit proyekk
[email protected]
Relasi Tunggal (Unary Relation) Merupakan relasi yang terjadi dari sebuah entitas ke entitas yang sama entitas ke entitas yang sama Contoh:
relasi memimpin pada entitas pegawai
(0
0,1) (0
,N )
Pegawai g
memimpin
[email protected]
Relasi Multi Entitas (N ary Relation) (N‐ary Relation) Merupakan relasi dari 3 buah entitas atau lebih. Seharusnya dihindari, karena akan mengaburkan derajat relasi yang ada dalam relasi. Contoh: Instruktur
Semester
Menawarkan
Nama Kursus
Tahun
NoKursus
[email protected]
IDSemester
Relasi Ganda ( d d (Redundant Relation) l ) Relasi yang jumlahnya lebih dari satu untuk dua Relasi yang jumlahnya lebih dari satu untuk dua buah entitas Contoh:
(1,1)
Pegawai
bekerja untuk
(1,N)
Departemen
(0,1)
mengepalai
(1,1)
[email protected]
E‐R Diagram dengan Relasi Ternary (berderajat 3)
2nd
[email protected]
Weak Entity ( Entitas Lemah) Weak Entity ( Entitas Lemah) • adalah entitas yang tidak mempunyai primary key • Keberadaannya tergantung pada keberadaan entitas Keberadaannya tergantung pada keberadaan entitas teridentifikasi lain – harus terhubung ke entitas teridentifikasi dengan relasi total, one‐to‐many dari entitas teridentifikasi ke entitas lemah – relasi teridentifikasi (Identifying relationship) relasi teridentifikasi (Identifying relationship) dinotasikan dengan jajaran genjang ganda • Discriminator (atau kunci partial) dari entitas lemah adalah atribut yang membedakan dari entitas lainnya. • Kunci primer entitas lemah dibentuk dari kunci primer entitas kuat plus discriminator entitas kuat plus discriminator.
[email protected]
Contoh Weak Entity Sets • payment_number – discriminator dari entitas p y payment entity y • Primary key dari payment adalah (loan_number, payment_number)
2nd
[email protected]
Specialization • Proses disain Top‐down; kita disain subgroupings dengan entitas yang berbeda dengan entitias lainnya. • Subgroupings ini menjadi level lebih rendah yang punya atribut atau partisipasi dalam relasi yang tidak bisa diterapkan pada level yang lebih tinggi p p y g gg • Ditegaskan dengan komponen segitiga dilabeli ISA (Cth. Seorang customer “adalah seorang” manusia). • Attribute inheritance Attribute inheritance (atribut warisan)– (atribut warisan) entitas lebih rendah entitas lebih rendah mewarisi semua atribut dan partisipasi relasi dari entitas lebih tinggi.
[email protected]
Contoh Specialization
2nd
[email protected]
Generalization (Generalisasi) • Proses disain bottom‐up– p menggabungkan gg g beberapa entitas karena memiliki kesamaan fitur menjadi entitas level lebih tinggi • Specialization dan generalization saling Specialization dan generalization saling berkebalikan satu sama lain; dinyatakan dengan E‐R diagram pada cara yang sama.
2nd
[email protected]
Specialization and Generalization (lanj.) • bisa diperoleh multiple specializations dari entitas didasari fitur yang berbeda. y g • Cont. permanent_employee vs. temporary_employee, ditambahkan ke officer vs. secretary vs. teller • Setiap employee dapat S ti l d t – anggota dari salah satu permanent_employee atau temporary_employee, – dan juga anggota dari salah satu officer, secretary, or teller • Relasi ISA juga diacu pada relasi superclass Relasi ISA juga diacu pada relasi superclass ‐ subclass
2nd
[email protected]
Agregasi n Perhartikan P h tik relasi l i ternary t works_on, k sebelumnya b l n Pandang kita ingin menambah manager yang ditugaskan untuk
task tertentu p pada p pegawai g di suatu cabang g maka hasilnya y spt p berikut ;
[email protected]
Aggregation (Cont.) • Relasi Relasi works_on dan manages works on dan manages adalah informasi yang adalah informasi yang overlapping (tumpang tindih) – Setiap relasi manages berhubungan dengan relasi works_on – Beberapa relasi works_on belum tentu berhubungan dengan relasi manages • Sehingga kita tidak dapat menghapus relasi works_on Sehingga kita tidak dapat menghapus relasi works on • Hilangkan redudansi ini dengan aggregasi – Nyatakan relasi sebagai entitas abstrak y g – Ijinkan relasi diantara relasi – Abstarksi dari relasi menjadi entitas baru • Penyajian diagram berikut menggambarkan – Seorang pegawi bekerja untuk sebuah job di suatu cabang – Kombinasi dari Pegawai, cabang , dan job mempunyai manager yang terkait
[email protected]
E‐R Diagram dengan Aggregasi
2nd
[email protected]
E‐R Diagram Untuk Perusahaan Perbankan
2nd
[email protected]
Ringkasan Simbol yang digunakan pada E‐R
[email protected]
Ringkasan Symbols (lanj.) Ringkasan Symbols (lanj.)
2nd
[email protected]
Mapping Table Mapping Table • masing-masing masing masing tipe entitas Æ suatu TABEL yang unik yang mempunyai nama sama • masing-masing tabel terdiri dari kolom-kolom Æatribut-atribut dari tipe entitas y dari “owner” • Entitas lemah Æ key (entitas kuat) ke tabel entitas lemah
[email protected]
Mapping Table Relationship Mapping Table Relationship • Bergantung g g pada p cardinality y ratio(CR) ( ) dan participation constraint (PC) • Untuk CR 1:1 foreign key relationship masuk ke PC total • Untuk CR 1:N foreign key relationship masuk ke sisi N ((1 sisi p parent, N sisi child)) • Untuk CR M:N Ædibuat tabel tersendiri dengan foreign key relationship diambil dari setiap primary entitas yang terlibat
[email protected]
Mapping ke Skema Relasi (3) Diagram Skema Konsepsual / ER Diagram untuk Database COMPANY
[email protected]
Mapping Skema ER Diagram dengan g y Constraint Referential Integrity Employee Fname
Minit
Lname SSN Bdate Address Sex
Salary SuperSSN
Departement Dname DNumber MgrSSN MgrStartDate Dept_Locations DNumber DLocation Project Pname PNumber PLocation DNum Works_On Works On ESSN
PNO
2nd
Hours
Dependent ESSN
Dependent_name
Sex
Bdate
Relationship
[email protected]
DNO
Hal2 yang harus diperhatikan dalam perancangan E‐R Hal2 yang harus diperhatikan dalam perancangan E‐R • Penggunaan Penggunaan atribut atau entitas untuk atribut atau entitas untuk merepresentasikan sebuah objek • Pemilihan penggunaan entitas atau relationship p gg p untuk merepresentasikan kondisi dunia nyata p gg p y • Pemilihan penggunaan relationship ternary atau sepasang relationship binary • Pemilihan penggunaan entitas kuat atau lemah • Penggunaan spesialisasi/generalisasi gg g g • Penggunaan agregasi 2nd
[email protected]
2nd
Referensi
• Silb Silberschatz, Abraham; Korth, Henry F.; Sudarshan S., h t Ab h K th H F S d h S Database System Concepts, Fourth Edition,McGraw Hill 2002 ISBN: 0072283637 Hill, 2002, ISBN: 0072283637 • Date,C.J, An Introduction to Database System, 7 th Edition, Addison Wesley, 2000 Edition, Addison Wesley, 2000 • Ramez Elmasri, Sam Navathe, Fundamentals of Database Systems, y , 4th Edition, Addison Wesley , y Publishing Company, 2000. g Ramakrisnan, Gherke, Database • Raghu Management System, 3rd Edition, McGraw‐Hill, 2001. • Situs‐situs terkait “E_R Diagram”
[email protected]