SlideShare ist ein Scribd-Unternehmen logo
1 von 71
©Silberschatz, Korth and Sudarshan2.1Database System Concepts
Bab 2 : Model Entity-RelationshipBab 2 : Model Entity-Relationship
Kumpulan Entity
Kumpulan Relationship
Hasil Desain
Kendala Pemetaan
Kunci
Diagram E-R
Keistimewaan Perluasan E-R
Desain dari Skema Database E-R
Reduksi dari Skema E-R ke Tabel
©Silberschatz, Korth and Sudarshan2.2Database System Concepts
Entity SetsEntity Sets
Database dapat dimodelkan sebagai:
 kumpulan dari entity (entitas)
 hubungan antar entity (entitas)
Entity adalah suatu obyek yang dapat dikenali dari obyek yang
lain.
Contoh : seseorang yang khusus, perusahaan, peristiwa,
tanaman.
Entity mempunyai atribut
Contoh : seseorang mempunyai nama dan alamat
Kumpulan entity adalah suatu kumpulan entity dengan tipe yang
sama yang berbagi properti yang sama pula.
Contoh : kumpulan orang, perusahaan, tanaman, tempat liburan
©Silberschatz, Korth and Sudarshan2.3Database System Concepts
Kumpulan Entitas Pelangganan (Kumpulan Entitas Pelangganan (customer)customer)
dan Pinjaman (dan Pinjaman (loan)loan)
customer-id customer- customer- customer- loan- amount
name street city number
©Silberschatz, Korth and Sudarshan2.4Database System Concepts
AttributesAttributes
Entity ditampilkan oleh sekumpulan attribute, yang mana properti
deskriptifnya dikuasai oleh seluruh anggota dalam kumpulan entity.
Contoh :
customer = (customer-id, customer-name,
customer-street, customer-city)
loan = (loan-number, amount)
Domain –adalah satuan nilai yang diperbolehkan pada setiap attribute
Tipe attribute :
 Simple (sederhana) dan composite (gabungan) attributes.
 Single-valued (satu-fungsi ) dan multi-valued (multi-fungsi ) attributes
Contoh : atribut multi-fungsi : nomor telepon
 Derived (asal) attributes
Dapat diperhitungkan dari atribut lain
Contoh : umur, tanggal kelahiran
©Silberschatz, Korth and Sudarshan2.5Database System Concepts
Composite AttributesComposite Attributes
©Silberschatz, Korth and Sudarshan2.6Database System Concepts
Relationship SetsRelationship Sets
Relationship adalah kesesuaian antar beberapa entity
Contoh:
Hayes depositor A-102
customer entity relationship set account entity
Relationship set adalah hubungan matematika antara entity n>2,
tiap bagiannya diambil dari satuan entity {(e1, e2, … en) | e1 ∈ E1,
e2 ∈ E2, …, en ∈ En} dimana (e1, e2, …, en) adalah relationship
 Contoh :
(Hayes, A-102) ∈ depositor
©Silberschatz, Korth and Sudarshan2.7Database System Concepts
Relationship SetRelationship Set borrowerborrower
©Silberschatz, Korth and Sudarshan2.8Database System Concepts
Relationship Sets (lanjutan)Relationship Sets (lanjutan)
Attribute dapat merupakan properti dari relationship set.
Sebagai contoh: depositor merupakan relationship set antara entity sets
customer dan account mungkin beratribut access-date
©Silberschatz, Korth and Sudarshan2.9Database System Concepts
TingkatanTingkatan Relationship SetRelationship Set
Mengacu pada jumlah entity sets yang terlibat dalam relationship set.
Relationship sets yang melibatkan dua entity sets adalah binary (atau
tingkat dua).
Umumnya, hampir semua relationship sets dalam sistem database adalah
binary.
Relationship sets mungkin melibatkan lebih dari dua entity sets.
 Contoh : misal seorang pegawai bank bekerja (bertanggung jawab)
dalam beberapa cabang, dengan tugas yang berlainan dalam setiap
cabang yang berlainan pula. Maka disini terdapat relationship set
ternary antara entity sets pegawai (employee), tugas (job) dan
cabang (branch)
Relationships antara lebih dari dua entity sets sangat jarang. Kebanyakan
hubungan adalah binary (akan dibahas lebih jauh nanti)
©Silberschatz, Korth and Sudarshan2.10Database System Concepts
Mapping Cardinalities (CardinalitasMapping Cardinalities (Cardinalitas
Pemetaan)Pemetaan)
Mengungkap jumlah entitas ke entitas yang lain bisa
dihubungkan melalui relationship set.
Paling banyak digunakan dalam menggambarkan
relationship sets biner ..
Untuk relationship set biner cardinalitas pemetaan harus
merupakan salah satu dari tipe berikut:
 One to one (satu ke satu)
 One to many (satu ke banyak)
 Many to one (banyak ke satu)
 Many to many (banyak ke banyak)
©Silberschatz, Korth and Sudarshan2.11Database System Concepts
Mapping Cardinalities (CardinalitasMapping Cardinalities (Cardinalitas
Pemetaan)Pemetaan)
One to one One to many
Note: Beberapa elemen di A dan B mungkin tidak dipetakan ke
elemen manapun di himpunan lain
©Silberschatz, Korth and Sudarshan2.12Database System Concepts
Mapping Cardinalities (CardinalitasMapping Cardinalities (Cardinalitas
Pemetaan)Pemetaan)
Many to one Many to many
Note: Beberapa elemen di A dan B mungkin tidak dipetakan
pada elemen mana pun di himpunan lain.
©Silberschatz, Korth and Sudarshan2.13Database System Concepts
Mapping Cardinalities mempengaruhiMapping Cardinalities mempengaruhi ER DesignER Design
Dapat membuat access-date sebagai atribut dari account, bukan atribut
relationship , jika tiap account hanya mempunyai satu pelanggan
Misal, hubungan dari account ke pelanggan adalah banyak ke satu,
atau secara equivalent, pelanggan ke account adalah satu ke banyak.
©Silberschatz, Korth and Sudarshan2.14Database System Concepts
E-R DiagramsE-R Diagrams
Rectangles melambangkan set-set entitas .
Diamonds melambangkan set-set hubungan (relationship) .
Lines menghubungkan atribut dengan set-set entitas serta set-set entitas
dengan set-set hubungan (relationship).
Ellipses mewakili attributes
Double ellipses mewakili atribut multivalued .
Dashed ellipses menunjukkan sifat yang didapat..
Underline menunjukkan sifat kunci pokok (akan dipelajari nanti)
©Silberschatz, Korth and Sudarshan2.15Database System Concepts
E-R Diagram dengan Composite,E-R Diagram dengan Composite,
Multivalued, dan Derived AttributesMultivalued, dan Derived Attributes
©Silberschatz, Korth and Sudarshan2.16Database System Concepts
Relationship Sets dengan Attributes RolesRelationship Sets dengan Attributes Roles
©Silberschatz, Korth and Sudarshan2.17Database System Concepts
RolesRoles
Satuan entity dalam suatu relationship tidak perlu terpisah
Label “manager” dan “worker” disebut sebagai tugas (roles);
mereka menetapkan bagaimana entitas pegawai berinteraksi
dengan pekerjaan untuk relationship sets
Roles ditunjukkan di E-R diagram dengan memberi label pada
garis yang menyambungkan diamond ke segi empat.
Label role adalah merupakan pilihan, dan dipergunakan untuk
menjelaskan ilmu semantik relationship
©Silberschatz, Korth and Sudarshan2.18Database System Concepts
Cardinality Constraints (keterbatasan kardinalitas)Cardinality Constraints (keterbatasan kardinalitas)
Kami mengungkapkan keterbatasan cardinalitas dengan menggambarkan baik
itu batas yang ditujukan (→), menandakan “one,” atau garis yang tak ditujukan
(—), menandakan “many,” di antara relationship set dan set entitas.
E.g.: Seperti : Relationship satu-ke-satu :
 seorang pelanggan dihubungkan dengan tak lebih dari satu pinjaman via
hubungan borrower
 pinjaman dihubungkan dengan tak lebih dari satu orang pelanggan via
borrower
©Silberschatz, Korth and Sudarshan2.19Database System Concepts
One-To-Many Relationship (Hubungan satu ke banyakOne-To-Many Relationship (Hubungan satu ke banyak))
Pada satu-ke-banyak hubungan pinjaman dihubungkan dengan
tak lebih dari satu orang pelanggan via peminjam, seorang
pelanggan dihubungkan dengan beberapa (termasuk 0) yang
meminjami via borrower
©Silberschatz, Korth and Sudarshan2.20Database System Concepts
Many-To-One RelationshipsMany-To-One Relationships
((HubunganHubungan Banyak-Ke-BanyakBanyak-Ke-Banyak))
Di dalam many-to-one relationship seorang pelanggan
dihubungkan dengan beberapa (mungkin 0) pinjaman via
peminjam, pinjaman dihubungkan dengan beberapa (mungkin 0)
pelanggan via peminjam
©Silberschatz, Korth and Sudarshan2.21Database System Concepts
Many-To-Many Relationship (Many-To-Many Relationship (HubunganHubungan Banyak-Ke-Banyak-Ke-
BanyakBanyak))
Seorang pelanggan dihubungkan dengan beberapa
(mungkin 0) pinjaman via peminjam
Pinjaman dihubungkan dengan beberapa (mungkin 0)
pelanggan via peminjam
©Silberschatz, Korth and Sudarshan2.22Database System Concepts
Peran serta Set Entitas padaPeran serta Set Entitas pada Relationship SetRelationship Set
Total participation (Total partisipasi): (ditunjukkan dengan garis dobel): setiap
entitas di set entitas mengambil bagian paling sedikit satu relationship pada
relationship set
Misal. Partisipasi pinjaman pada peminjam adalah keseluruhan
setiap pinjaman harus mempunyai seorang pelanggan yang
menghubungkan ke itu (pinjaman) via peminjam
Partial participation (Partial partisipasi): beberapa entitas mungkin tidak
mengambil bagian dalam relationship (hubungan) yang mana pun pada
relationship set..
misal partisipasi pelanggan pada peminjam adalah parsial
©Silberschatz, Korth and Sudarshan2.23Database System Concepts
Notasi Alternatif untuk BatasanNotasi Alternatif untuk Batasan
CardinalitasCardinalitas
Batas cardinalitas juga bisa mengungkapkan keterbatasan partisipasi
©Silberschatz, Korth and Sudarshan2.24Database System Concepts
Keys (kunci-kunci)Keys (kunci-kunci)
Super key (super kunci) dari set entitas adalah
satu atau lebih atribut yang mana nilainya secara
unik menentukan masing-masing entitas .
Candidate key (calon kunci) dari suatu set entitas
adalah Super key minimal
Customer-id (id pelanggan) adalah Candidate
key dari pelanggan
account-number (nomer rekening ): adalah
candidate key dari account
Meski beberapa candidate key mungkin ada,
salah satu candidate key dipilih untuk menjadi
primary key (kunci pokok).
©Silberschatz, Korth and Sudarshan2.25Database System Concepts
Key untuk Relationship SetKey untuk Relationship Set
Kombinasi primary keys (kunci pokok) dari set entitas yang
berpartisipasi membentuk super key (kunci super) pada relationship set
(set hubungan).
 customer-id, account-number (pelanggan-id, rekening-jumlah)
adalah super key (kunci pokok) dari depositor
 CATATAN: ini berarti sepasang set-set entitas bisa mempunyai tak
lebih dari satu relationship (hubungan) pada suatu relationship set
tertentu.
Misal. jika kami menginginkan untuk melacak semua access-
dates ke masing-masing rekening oleh masing-masing
pelanggan, kita tidak bisa mengambil relationship (hubungan)
untuk masing-masing akses. Tapi kita tetap bisa menggunakan
sifat multivalued
Harus mempertimbangkan pemetaan cardinalitas dari relationship set di
saat mengambil keputusan apa calon kuncinya (candidate key)
Tetap perlu mempertimbangkan ilmu semantik dari set hubungan
(relationship set) dalam memilih primary key (kunci pokok) bila timbul
masalah adanya lebih dari satu candidate key (calon kunci)
©Silberschatz, Korth and Sudarshan2.26Database System Concepts
Diagram E-R dengan Hubungan TernaryDiagram E-R dengan Hubungan Ternary
((Ternary Relationship)Ternary Relationship)
©Silberschatz, Korth and Sudarshan2.27Database System Concepts
Keterbatasan Cardinalitas pada HubunganKeterbatasan Cardinalitas pada Hubungan
Ternary (Ternary Relationship)Ternary (Ternary Relationship)
Diperbolehkan tak lebih dari satu anak panah dari hubungan ternary (atau
derajat yang lebih besar) untuk menunjukkan keterbatasan cardinalitas
Misal. Suatu anak panah dari wroks-on ke job menunjukkan masing-masing
pegawai mengerjakan tak lebih dari satu pekerjaan di cabang yang mana
pun.
Jika ada lebih dari satu anak panah, ada dua cara untuk mendefinisikan
artinya.
 misal. Hubungan ternary R di antara A, B dan C dengan anak panah ke
B dan C bisa berarti :
 1. Tiap-tiap entitas A dihubungkan dengan entitas unik dari B dan C atau
 2. Masing-masing pasang entitas dari (A, B) dihubungkan dengan
entitas unik C, dan masing-masing pasang (A, C) dihubungkan
dengan entitas unik B
 Tiap alternatif sudah dipakai pada formalisme berbeda
 Untuk menghindari kebingungan tidak diijinkan menggunakan lebih dari
satu anak panah
©Silberschatz, Korth and Sudarshan2.28Database System Concepts
Binary Vs. Hubungan NonbinaryBinary Vs. Hubungan Nonbinary (Non-Binary(Non-Binary
Relationships)Relationships)
Beberapa hubungan yang kelihatannya non biner
mungkin sebaiknya ditampilkan menggunakan
hubungan biner
Misal. Hubungan ternary orang tua, menghubungkan
seorang anak ke bapak dan ibunya, hal ini paling baik
diganti oleh dua hubungan biner, bapak dan ibu
Dengan menggunakan dua hubungan biner
memungkinkan informasi sebagian (misal hanya
ibu yang tahu)
Tetapi ada beberapa hubungan yang secara alami
non-biner
misal. works-on
©Silberschatz, Korth and Sudarshan2.29Database System Concepts
Mengubah Hubungan Non Biner ke Bentuk BinerMengubah Hubungan Non Biner ke Bentuk Biner
Secara umum, hubungan non biner mana pun bisa dilambangkan memakai
hubungan biner dengan membuat set entitas buatan.
 Mengganti R di antara set-set entitas A, B dan C di samping set entitas
E, dan tiga set hubungan (relationship sets ):
1. RA, menghubungkan E dan A 2.RB, menghubungkan E dan B
3. RC, menghubungkan E dan C
 Menciptakan atribut pengenal khusus bagi E
 Menambah atribut mana pun dari R ke E
 Untuk setiap hubungan (ai, bi, ci) di R, menciptakan
1. Entitas baru ei di set entitas E 2. menambah (ei, ai) ke RA
3. menambah (ei, bi) ke RB 4. menambah (ei, ci) ke RC
©Silberschatz, Korth and Sudarshan2.30Database System Concepts
Mengubah Hubungan Non Biner (lanjutan)Mengubah Hubungan Non Biner (lanjutan)
Juga perlu menterjemahkan keterbatasan
 Menterjemahkan semua keterbatasan bisa jadi tidak mungkin
 Mungkin ada permisalan di skema terjemahan yang tidak
dapat merespon segala kejadian di R yang mana pun
Latihan : menambahkan keterbatasan ke hubungan RA, RB
dan RC untuk menjamin bahwa entitas yang baru
diciptakan berhubungan kepada persis satu entitas pada
masing-masing set-set entitas A, B dan C
 Kami bisa menghindari terciptanya pengenalan atribut
dengan membuatkan E suatu set entitas yang lemah (akan
digambarkan tak lama lagi) yang dapat dikenali dari tiga set
hubungan
©Silberschatz, Korth and Sudarshan2.31Database System Concepts
Design IssuesDesign Issues
Menggunakan set-set entitas vs. Atribut
Pilihan utamanya tergantung pada struktur perusahaan yang
dimodelkan, dan pada ilmu semantik yang dihubungkan dengan
sifat dalam pertanyaan.
Menggunakan set-set entitas vs. relationship sets.
Pedoman yang mungkin adalah mengarahkan suatu set hubungan
untuk menggambarkan sebuah tindakan yang terjadi antar entitas
Binary versus n-ary relationship sets
Walaupun mungkin untuk mengganti set hubungan (relationship
set) nonbiner manapun (n-ary, untuk n > 2) dengan beberapa set
hubungan biner yang jelas, set hubungan n-ary menunjukkan lebih
jelas bahwa beberapa entitas mengambil bagian pada satu
hubungan.
Penempatan atribut hubungan (relationship attributes)
©Silberschatz, Korth and Sudarshan2.32Database System Concepts
Weak Entity Sets (Set-set EntitasWeak Entity Sets (Set-set Entitas
Lemah)Lemah)
Set entitas yang tidak mempunyai kunci pokok (primary key)
disebut sebagai set entitas lemah (weak entity set.).
Keberadaan set entitas lemah tergantung pada keberadaan set
entitas pengenal (identifying entity set)
 harus berhubungan dengan set entitas pengenal melalui jumlah
total, satu-ke-banyak set hubungan (one to many relationship) dari
set pengenal ke set entitas lemah
 Hubungan pengenal (Identifying relationship ) digambarkan dengan
memakai dobel diamond
Discriminator (atau kunci parsial) pada set entitas lemah adalah
set dari sifat (atribut) yang membedakan antara semua entitas
dari set entitas lemah.
Kunci pokok (primary key ) dari set entitas lemah terbentuk oleh
kunci pokok (primary key ) dari set entitas kuat yang mana set
entitas lemah keberadaannya tergantung, ditambah discriminator
dari set entitas lemah.
©Silberschatz, Korth and Sudarshan2.33Database System Concepts
Weak Entity Sets /Weak Entity Sets / Set-Set Entitas lemahSet-Set Entitas lemah
(lanjutan)(lanjutan)
Kita menggambarkan set entitas lemah dengan segi empat dobel
Kita menekankan discriminator pada set entitas lemah dengan garis
pisah.
payment-number – discriminator dari set entitas payment
Primary key untuk payment – (loan-number, payment-number)
©Silberschatz, Korth and Sudarshan2.34Database System Concepts
Weak Entity Sets /Weak Entity Sets / Set-Set Entitas LemahSet-Set Entitas Lemah
(lanjutan)(lanjutan)
Catatan: primary key dari set entitas kuat tidak
disimpan secara gamblang/jelas dengan set entitas
lemah, karena hal ini tersirat pada relationship
(hubungan) pengenal.
Jika loan-number disimpan secara jelas/gamblang,
payment bisa dibuat entitas kuat, tetapi kemudian
hubungan (relationship ) antara payment dan loan
akan disalin oleh hubungan (relationship) tersirat yang
ditegaskan oleh sifat (attribut) loan-number biasa ke
payment dan loan
©Silberschatz, Korth and Sudarshan2.35Database System Concepts
Contoh Lain Set Entitas LemahContoh Lain Set Entitas Lemah
Di universitas, kursus (course) adalah entitas kuat dan
penawaran-kursus (course-offering) bisa diperagakan
sebagai entitas lemah
Discriminator dari course-offering adalah semester
(termasuk tahun) dan bagian-jumlah (section-number)
(jika terdapat lebih dari satu bagian)
Jika kita peragakan course-offering sebagai entitas kuat
kita akan peragakan course-number sebagai sifat.
Kemudian relationship dengan course akan tersirat pada
attribute course-number
©Silberschatz, Korth and Sudarshan2.36Database System Concepts
SpesialisasiSpesialisasi
Proses desain atas-bawah (Top-down); kami mengarahkan sub-
pengelompokan dalam set entitas yang khas dari entitas lain di dalam set.
Sub-pengelompokan ini menjadi set-set entitas dengan level lebih rendah
yang mempunyai sifat/atribut atau mengambil bagian dalam
hubungan/relationship yang tidak diterapkan dalam set entitas dengan
level lebih tinggi.
Digambarkan dengan komponen segitiga (triangle) berlabel ISA (misal.
Customer “adalah seseorang/ person”).
Attribute inheritance (Attribut warisan) – set entitas dengan level lebih
rendah mewarisi semua sifat / atribut dan partisipasi hubungan/
relationship dari set entitas dengan level lebih tinggi yang mana hal ini
terhubung.
©Silberschatz, Korth and Sudarshan2.37Database System Concepts
Contoh SpesialisasiContoh Spesialisasi
©Silberschatz, Korth and Sudarshan2.38Database System Concepts
GeneralisasiGeneralisasi
Proses desain dasar-ke atas (bottom-up) –
menggabungkan sejumlah set entitas yang membagi
fitur yang sama menjadi set entitas dengan level lebih
tinggi.
Spesialisasi dan generalisasi adalah kebalikan
sederhana satu dengan yang lain; mereka diwakilkan
dalam diagram E-R dengan cara yang sama.
Syarat-syarat spesialisasi dan generalisasi dapat
dipakai bergantian
©Silberschatz, Korth and Sudarshan2.39Database System Concepts
Spesialisasi dan GeneralisasiSpesialisasi dan Generalisasi
(lanjutan)(lanjutan)
Bisa mempunyai spesialisasi berlipat ganda pada set entitas
berdasarkan fitur yang berbeda.
Misal. Pegawai-permanen (permanent-employee) vs. Pegawai-
sementara (temporary-employee), atau bisa juga pegawai kantor
vs. sekretaris vs. teller (officer vs. secretary vs. teller ).
Tiap pegawai khusus (particular employee ) akan menjadi
 seorang anggota dari satu pegawai-permanen (permanent-employee)
atau pegawai-sementara (temporary-employee),
 dan juga seorang anggota dari satu pegawai kantor (officer),
sekretaris(secretary), atau teller
Hubungan/relationship ISA juga merujuk kepada hubungan
superkelas - subkelas (superclass - subclass )
©Silberschatz, Korth and Sudarshan2.40Database System Concepts
Keterbatasan desain padaKeterbatasan desain pada
Spesialisasi/GeneralisasiSpesialisasi/Generalisasi
Keterbatasan yang mana entitas bisa menjadi anggota dari set
entitas dengan level lebih rendah yang diberikan.
 condition-defined (kondisi-yang ditentukan)
Misal. semua pelanggan di atas 65 tahun adalah anggota dari set
entitas warganegara-senior (senior-citizen); warganegara-senior ISA
orang (senior-citizen ISA person).
 user-defined (pemakai-yang ditentukan)
Keterbatasan pada entitas ataupun bukan bisa masuk pada lebih
dari satu set entitas dengan level lebih rendah dalam satu
generalisasi.
 Disjoint
suatu entitas bisa hanya masuk dalam satu set entitas dengan level
lebih rendah
dicatat pada diagram E-R dengan tulisan disjoint di samping segitiga
ISA
 Overlapping (penumpukan)
suatu entitas bisa masuk pada lebih dari satu set entitas dengan
level lebih rendah
©Silberschatz, Korth and Sudarshan2.41Database System Concepts
Keterbatasan Desain padaKeterbatasan Desain pada
Spesialisasi/Generalisasi (lanjutan)Spesialisasi/Generalisasi (lanjutan)
Completeness constraint (Keterbatasan sempurna) -menetapkan
apakah entitas pada set entitas level lebih tinggi harus termasuk
dalam paling sedikit salah satu dari set-set entitas level lebih
rendah dalam generalisasi.
 total :entitas harus masuk dalam salah satu dari set entitas level
lebih rendah
 partial: entitas tidak perlu termasuk dalam salah satu set entitas
level lebih rendah
©Silberschatz, Korth and Sudarshan2.42Database System Concepts
Aggregation (Aggregation (Aggregasi/Penjumlahan)Aggregasi/Penjumlahan)
Menganggap hubungan ternary works-on , yang telah kami lihat di
awal
Misal kami ingin mencatat manajer untuk tugas yang dilakukan
oleh seorang pegawai di suatu cabang
©Silberschatz, Korth and Sudarshan2.43Database System Concepts
Aggregation /Aggregation / PenjumlahanPenjumlahan
(lanjutan)(lanjutan)
Set hubungan works-on dan manages mewakili penumpukan
information
 Tiap hubungan manages bersesuaian dengan hubungan works-on
 Tetapi, beberapa hubungan works-on mungkin tidak bersesuaian dengan
hubungan manages yang manapun
Jadi kami tidak dapat membuang hubungan works-on
Menghapus kelebihan ini melalui penjumlahan (agregation)
 Memperlakukan hubungan sebagai entitas abstrak
 membolehkan hubungan antar hubungan
 mengabstraksi hubungan ke dalam entitas baru
Tanpa memperkenalkan kelebihan (redundancy), diagram berikut
mewakili:
 seorang pegawai yang mengerjakan pekerjaan khusus di cabang khusus
 seorang pegawai (employee), cabang (branch), pekerjaan kombinasi (job
combination ) mungkin mempunyai manager
©Silberschatz, Korth and Sudarshan2.44Database System Concepts
Diagram E-R Dengan AggregationDiagram E-R Dengan Aggregation
©Silberschatz, Korth and Sudarshan2.45Database System Concepts
Penetapan E-R DesignPenetapan E-R Design
Penggunaan sifat atau set entitas untuk melambangkan obyek.
Konsep dunia nyata sebenarnya diungkapkan paling baik
dengan set entitas atau set hubungan.
Penggunaan hubungan ternary vs pasangan hubungan biner.
Penggunaan set entitas kuat atau lemah.
Penggunaan spesialisasi/generalisasi – menyumbang ke
modularity (modularitas) pada bentuk.
Penggunaan penjumlahan/agregation – bisa menganggap set
entitas jumlah/agregate sebagai satu kesatuan tanpa
memperhatikan detail dari struktur internalnya.
©Silberschatz, Korth and Sudarshan2.46Database System Concepts
Diagram E-R bagi Perusahaan PerbankanDiagram E-R bagi Perusahaan Perbankan
©Silberschatz, Korth and Sudarshan2.47Database System Concepts
Ringkasan Simbol2 yang digunakanRingkasan Simbol2 yang digunakan
dalam notasi E-Rdalam notasi E-R
©Silberschatz, Korth and Sudarshan2.48Database System Concepts
Ringkasan Simbol2 (lanjutan)Ringkasan Simbol2 (lanjutan)
©Silberschatz, Korth and Sudarshan2.49Database System Concepts
Alternatif notasi E-RAlternatif notasi E-R
©Silberschatz, Korth and Sudarshan2.50Database System Concepts
UMLUML
UML: Unified Modeling Language
UML mempunyai banyak bagian yang secara grafis
memperagakan aspek berbeda dari seluruh software system
UML Class Diagrams bersesuaian dengan diagram E-R, tetapi
dengan beberapa perbedaan.
©Silberschatz, Korth and Sudarshan2.51Database System Concepts
Ringkasan dari UML Class DiagramRingkasan dari UML Class Diagram
NotationNotation
©Silberschatz, Korth and Sudarshan2.52Database System Concepts
UML Class Diagrams (lanjutan)UML Class Diagrams (lanjutan)
Set-set entitas diperlihatkan sebagai kotak-kotak, dan sifat
diperlihatkan dalam kotak, atau bisa juga seperti elipsis terpisah
pada E-R diagram.
Set-set hubungan biner dilambangkan di UML hanya dengan
memberi garis batas yang menyambung set-set entitas. Nama set
hubungan ditulis berdampingan dengan garis.
Peran yang dimainkan oleh set entitas pada set hubungan juga
dapat ditetapkan dengan menulis nama peran di atas garis,
berdampingan dengan set entitas.
Nama set hubungan secara alternatif mungkin ditulis di sebuah
kotak, beserta dengan sifat dari set hubungan, dan kotak
disambungkan, memakai garis bertitik-titik, ke garis yang
menggambarkan set hubungan.
Hubungan nonbiner secara langsung tidak bisa dilambangkan di
UML -- mereka mesti dibalik ke hubungan biner .
©Silberschatz, Korth and Sudarshan2.53Database System Concepts
UML Class Diagram NotationUML Class Diagram Notation
(lanjutan)(lanjutan)
*Note reversal of position in cardinality constraint depiction
©Silberschatz, Korth and Sudarshan2.54Database System Concepts
UML Class Diagrams (lanjutan)UML Class Diagrams (lanjutan)
Keterbatasan cardinalitas ditetapkan dalam bentuk l…h, di mana l
menunjukkan jumlah minimum dan h jumlah maksimum hubungan
dimana suatu entitas bisa mengambil bagian.
Perhatikan : posisi dari keterbatasan adalah persis kebalikan dari
posisi keterbatasan dalam E-R diagram.
Keterbatasan 0.. * pada sisi E2 dan 0.. 1 pada sisi E1 berarti bahwa
tiap entitas E2 tersebut dapat mengambil bagian paling banyak
dalam satu hubungan, sedangkan masing-masing entitas E1 bisa
mengambil bagian dalam banyak hubungan; dengan kata lain,
hubungannya adalah banyak ke satu dari E2 ke E1.
Nilai tunggal, seperti 1 atau * mungkin ditulis di pinggir; nilai tunggal 1
di pinggir diperlakukan sama dengan 1.. 1, sedangkan * adalah sama
dengan 0.. *.
©Silberschatz, Korth and Sudarshan2.55Database System Concepts
Penurunan Skema E-R ke dalamPenurunan Skema E-R ke dalam
TabelTabel
Primary keys (Kunci pokok) memungkinkan set-set
entitas dan set-set hubungan diungkapkan secara
seragam sebagai tabel-tabel yang melambangkan isi
database.
Database yang menyesuaikan diri ke diagram E-R bisa
diwakili oleh sekumpulan tabel.
Untuk tiap set entitas dan set hubungan terdapat sebuah
tabel unik yang menandakan nama dari set entitas atau
set hubungan yang berhubungan.
Tiap tabel mempunyai sejumlah kolom (umumnya
berhubungan dengan sifat), yang mempunyai nama unik.
Membalik diagram E-R menjadi bentuk tabel adalah
dasar untuk memperoleh pola database relasional dari E-
R diagram.
©Silberschatz, Korth and Sudarshan2.56Database System Concepts
Melambangkan Set-Set Entitas sebagaiMelambangkan Set-Set Entitas sebagai
TabelTabel
Set entitas kuat berkurang menjadi tabel dengan sifat yang sama
©Silberschatz, Korth and Sudarshan2.57Database System Concepts
Atribut Kombinasi (Atribut Kombinasi (Composite)Composite) dan Nilaidan Nilai
Ganda (Ganda (Multivalued)Multivalued)
Atribut kombinasi dikeluarkan dengan membuat atribut terpisah untuk
masing-masing komponen atribut
 misal. Memberikan set entitas customer dengan atribut kombinasi nama
dengan komponen atribut first-name dan last-name, tabel yang
berhubungan dengan set entitas mempunyai dua atribut
name.first-name and name.last-name
Atribut nilai ganda M dari entitas E diwakili oleh tabel EM yang
terpisah
 Table EM mempunyai atribut yang cocok dengan primary key E dan
atribut yang cocok dengan atribut nilai ganda M
 misal. Atribut nilai ganda dependent-names dari pegawai diwakili oleh
tabel employee-dependent-names( employee-id, dname)
 Masing-masing nilai dari atribut nilai ganda dipetakan ke dalam baris
terpisah dari tabel EM
misal., entitas pegawai dengan primary key John dan
tanggungan/dependents Johnson dan Johndotir memetakan ke dua
jajaran/baris: :
(John, Johnson) dan (John, Johndotir)
©Silberschatz, Korth and Sudarshan2.58Database System Concepts
Merepresentasi Set Entitas LemahMerepresentasi Set Entitas Lemah
Set entitas lemah menjadi sebuah tabel yang menyertakan
kolom untuk primary key dari set entitas kuat pengenal
©Silberschatz, Korth and Sudarshan2.59Database System Concepts
Merepresentasikan Set HubunganMerepresentasikan Set Hubungan
((Relationship SetsRelationship Sets)) sebagai Tabelsebagai Tabel
Set hubungan banyak-ke-banyak (many to many) diwakilkan
sebagai tabel dengan kolom-kolom untuk primary key - primary
key dari kedua set entitas yang mengambil bagian, dan setiap
sifat deskriptif dari set hubungan.
Misal. : tabel untuk set hubungan borrower
©Silberschatz, Korth and Sudarshan2.60Database System Concepts
Kelebihan TabelKelebihan Tabel
Set-set hubungan banyak-ke-satu (many to one) dan satu-ke-
banyak (one to many) yang total di sisi many bisa diwakilkan
dengan menambahkan atribut ekstra ke sisi banyak (many),
berisi primary key pada sisi one.
Misal. : Daripada membuat tabel untuk hubungan account-
branch, lebih baik menambahkan atribut branch ke set entitas
account
©Silberschatz, Korth and Sudarshan2.61Database System Concepts
Redundancy of Tables (Cont.)Redundancy of Tables (Cont.)
For one-to-one relationship sets, either side can be chosen
to act as the “many” side
 That is, extra attribute can be added to either of the tables
corresponding to the two entity sets
If participation is partial on the many side, replacing a
table by an extra attribute in the relation corresponding to
the “many” side could result in null values
The table corresponding to a relationship set linking a weak
entity set to its identifying strong entity set is redundant.
 E.g. The payment table already contains the information that would
appear in the loan-payment table (i.e., the columns loan-number
and payment-number).
©Silberschatz, Korth and Sudarshan2.62Database System Concepts
Representing Specialization as
TablesTables
Method 1:
 Form a table for the higher level entity
 Form a table for each lower level entity set, include primary key of
higher level entity set and local attributes
table table attributes
person name, street, city
customer name, credit-rating
employee name, salary
 Drawback: getting information about, e.g., employee requires
accessing two tables
©Silberschatz, Korth and Sudarshan2.63Database System Concepts
Representing Specialization asRepresenting Specialization as
Tables (Cont.)Tables (Cont.)
Method 2:
 Form a table for each entity set with all local and inherited
attributes
table table attributes
person name, street, city
customer name, street, city, credit-rating
employee name, street, city, salary
If specialization is total, no need to create table for generalized
entity (person)
 Drawback: street and city may be stored redundantly for persons
who are both customers and employees
©Silberschatz, Korth and Sudarshan2.64Database System Concepts
Relations Corresponding toRelations Corresponding to
AggregationAggregation
To represent aggregation, create a table containing
primary key of the aggregated relationship,
the primary key of the associated entity set
Any descriptive attributes
©Silberschatz, Korth and Sudarshan2.65Database System Concepts
Relations Corresponding toRelations Corresponding to
Aggregation (Cont.)Aggregation (Cont.)
E.g. to represent aggregation manages between relationship
works-on and entity set manager, create a table
manages(employee-id, branch-name, title, manager-name)
Table works-on is redundant provided we are willing to store
null values for attribute manager-name in table manages
End of Chapter 2End of Chapter 2
©Silberschatz, Korth and Sudarshan2.67Database System Concepts
E-R Diagram for Exercise 2.10E-R Diagram for Exercise 2.10
©Silberschatz, Korth and Sudarshan2.68Database System Concepts
E-R Diagram for Exercise 2.15E-R Diagram for Exercise 2.15
©Silberschatz, Korth and Sudarshan2.69Database System Concepts
E-R Diagram for Exercise 2.22E-R Diagram for Exercise 2.22
©Silberschatz, Korth and Sudarshan2.70Database System Concepts
E-R Diagram for Exercise 2.15E-R Diagram for Exercise 2.15
©Silberschatz, Korth and Sudarshan2.71Database System Concepts
Existence DependenciesExistence Dependencies
If the existence of entity x depends on the existence of
entity y, then x is said to be existence dependent on y.
 y is a dominant entity (in example below, loan)
 x is a subordinate entity (in example below, payment)
loan-payment paymentloan
If a loan entity is deleted, then all its associated payment entities
must be deleted also.

Weitere ähnliche Inhalte

Ähnlich wie ER DIAGRAM

Perancangan basisdata2
Perancangan basisdata2Perancangan basisdata2
Perancangan basisdata2Bhucenk
 
Perancangan basisdata2
Perancangan basisdata2Perancangan basisdata2
Perancangan basisdata2Bhucenk
 
Model relational
Model relationalModel relational
Model relationallikut101010
 
Chapter 5 -_data_model_using_erd_fix
Chapter 5 -_data_model_using_erd_fixChapter 5 -_data_model_using_erd_fix
Chapter 5 -_data_model_using_erd_fixtitoagung
 
3- SISTEM BASIS DATA,merupakan sistem yang terdiri atas kumpulan file (tabel)...
3- SISTEM BASIS DATA,merupakan sistem yang terdiri atas kumpulan file (tabel)...3- SISTEM BASIS DATA,merupakan sistem yang terdiri atas kumpulan file (tabel)...
3- SISTEM BASIS DATA,merupakan sistem yang terdiri atas kumpulan file (tabel)...arsawimax1
 
Isi materi kuliah bina sarana informatika
Isi materi kuliah bina sarana informatikaIsi materi kuliah bina sarana informatika
Isi materi kuliah bina sarana informatikaArmadaYogi1
 
312236643 model-data-dalam-basis-data
312236643 model-data-dalam-basis-data312236643 model-data-dalam-basis-data
312236643 model-data-dalam-basis-datanasrymonihu1
 
Lingkungan basis data (2)
Lingkungan basis data (2)Lingkungan basis data (2)
Lingkungan basis data (2)Arib Herzi
 
SIM 14, Michael Elyon, Prof. Dr. Hapzi, MM, database basis data , universitas...
SIM 14, Michael Elyon, Prof. Dr. Hapzi, MM, database basis data , universitas...SIM 14, Michael Elyon, Prof. Dr. Hapzi, MM, database basis data , universitas...
SIM 14, Michael Elyon, Prof. Dr. Hapzi, MM, database basis data , universitas...Michael Elyon
 
Kelompok 6 proses bisnis (e)
Kelompok 6 proses bisnis (e)Kelompok 6 proses bisnis (e)
Kelompok 6 proses bisnis (e)ermha wati
 
pdfcoffee.com_makalah-entity-relationship-diagram-erd-12-pdf-free.pdf
pdfcoffee.com_makalah-entity-relationship-diagram-erd-12-pdf-free.pdfpdfcoffee.com_makalah-entity-relationship-diagram-erd-12-pdf-free.pdf
pdfcoffee.com_makalah-entity-relationship-diagram-erd-12-pdf-free.pdfAishSkincare
 
basis data kelas 11 smk mata plajaran informatika
basis data kelas 11 smk mata plajaran informatikabasis data kelas 11 smk mata plajaran informatika
basis data kelas 11 smk mata plajaran informatikawindaamriani
 
Sistem Database menggunakan Model REA
Sistem Database menggunakan Model REASistem Database menggunakan Model REA
Sistem Database menggunakan Model REAAyunita Sari
 

Ähnlich wie ER DIAGRAM (20)

Perancangan basisdata2
Perancangan basisdata2Perancangan basisdata2
Perancangan basisdata2
 
Perancangan basisdata2
Perancangan basisdata2Perancangan basisdata2
Perancangan basisdata2
 
Model relational
Model relationalModel relational
Model relational
 
Sia 7 unpak
Sia 7 unpakSia 7 unpak
Sia 7 unpak
 
Erd2
Erd2Erd2
Erd2
 
Chapter 5 -_data_model_using_erd_fix
Chapter 5 -_data_model_using_erd_fixChapter 5 -_data_model_using_erd_fix
Chapter 5 -_data_model_using_erd_fix
 
3- SISTEM BASIS DATA,merupakan sistem yang terdiri atas kumpulan file (tabel)...
3- SISTEM BASIS DATA,merupakan sistem yang terdiri atas kumpulan file (tabel)...3- SISTEM BASIS DATA,merupakan sistem yang terdiri atas kumpulan file (tabel)...
3- SISTEM BASIS DATA,merupakan sistem yang terdiri atas kumpulan file (tabel)...
 
Isi materi kuliah bina sarana informatika
Isi materi kuliah bina sarana informatikaIsi materi kuliah bina sarana informatika
Isi materi kuliah bina sarana informatika
 
312236643 model-data-dalam-basis-data
312236643 model-data-dalam-basis-data312236643 model-data-dalam-basis-data
312236643 model-data-dalam-basis-data
 
Pertemuan 6 erd
Pertemuan 6 erdPertemuan 6 erd
Pertemuan 6 erd
 
Lingkungan basis data (2)
Lingkungan basis data (2)Lingkungan basis data (2)
Lingkungan basis data (2)
 
Sistem basis data 4
Sistem basis data 4Sistem basis data 4
Sistem basis data 4
 
SIM 14, Michael Elyon, Prof. Dr. Hapzi, MM, database basis data , universitas...
SIM 14, Michael Elyon, Prof. Dr. Hapzi, MM, database basis data , universitas...SIM 14, Michael Elyon, Prof. Dr. Hapzi, MM, database basis data , universitas...
SIM 14, Michael Elyon, Prof. Dr. Hapzi, MM, database basis data , universitas...
 
Kelompok 6 proses bisnis (e)
Kelompok 6 proses bisnis (e)Kelompok 6 proses bisnis (e)
Kelompok 6 proses bisnis (e)
 
pdfcoffee.com_makalah-entity-relationship-diagram-erd-12-pdf-free.pdf
pdfcoffee.com_makalah-entity-relationship-diagram-erd-12-pdf-free.pdfpdfcoffee.com_makalah-entity-relationship-diagram-erd-12-pdf-free.pdf
pdfcoffee.com_makalah-entity-relationship-diagram-erd-12-pdf-free.pdf
 
Database Modelling
Database ModellingDatabase Modelling
Database Modelling
 
basis data kelas 11 smk mata plajaran informatika
basis data kelas 11 smk mata plajaran informatikabasis data kelas 11 smk mata plajaran informatika
basis data kelas 11 smk mata plajaran informatika
 
Minggu 4
Minggu 4Minggu 4
Minggu 4
 
Sistem Database menggunakan Model REA
Sistem Database menggunakan Model REASistem Database menggunakan Model REA
Sistem Database menggunakan Model REA
 
Struktur Hirarki
Struktur HirarkiStruktur Hirarki
Struktur Hirarki
 

Kürzlich hochgeladen

"Mitos dan Kemenangan: Zeus Slot dan Dunia Yunani"
"Mitos dan Kemenangan: Zeus Slot dan Dunia Yunani""Mitos dan Kemenangan: Zeus Slot dan Dunia Yunani"
"Mitos dan Kemenangan: Zeus Slot dan Dunia Yunani"HaseebBashir5
 
DRAFT Penilaian Assessor _MIiii_UIM.pptx
DRAFT Penilaian Assessor _MIiii_UIM.pptxDRAFT Penilaian Assessor _MIiii_UIM.pptx
DRAFT Penilaian Assessor _MIiii_UIM.pptxnairaazkia89
 
Perkembangan Perbankan di Indonesia Perkembangan Perbankan di Indonesia
Perkembangan Perbankan di Indonesia Perkembangan Perbankan di IndonesiaPerkembangan Perbankan di Indonesia Perkembangan Perbankan di Indonesia
Perkembangan Perbankan di Indonesia Perkembangan Perbankan di Indonesialangkahgontay88
 
SV388: Platform Taruhan Sabung Ayam Online yang Populer
SV388: Platform Taruhan Sabung Ayam Online yang PopulerSV388: Platform Taruhan Sabung Ayam Online yang Populer
SV388: Platform Taruhan Sabung Ayam Online yang PopulerHaseebBashir5
 
UNGGUL!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Putih di Pangkal...
UNGGUL!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Putih di Pangkal...UNGGUL!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Putih di Pangkal...
UNGGUL!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Putih di Pangkal...FORTRESS
 
UNIKBET : Bandar Slot Pragmatic Play Bisa Deposit Ovo 24 Jam Online Banyak Bonus
UNIKBET : Bandar Slot Pragmatic Play Bisa Deposit Ovo 24 Jam Online Banyak BonusUNIKBET : Bandar Slot Pragmatic Play Bisa Deposit Ovo 24 Jam Online Banyak Bonus
UNIKBET : Bandar Slot Pragmatic Play Bisa Deposit Ovo 24 Jam Online Banyak Bonusunikbetslotbankmaybank
 
MODUL PEGAJARAN ASURANSI BELUM KOMPLIT 1
MODUL PEGAJARAN ASURANSI BELUM KOMPLIT 1MODUL PEGAJARAN ASURANSI BELUM KOMPLIT 1
MODUL PEGAJARAN ASURANSI BELUM KOMPLIT 1alvinjasindo
 
2. PRINSIP KEUANGAN HIJAU- PELATIHAN GREEN FINANCE.pptx
2. PRINSIP KEUANGAN HIJAU- PELATIHAN GREEN FINANCE.pptx2. PRINSIP KEUANGAN HIJAU- PELATIHAN GREEN FINANCE.pptx
2. PRINSIP KEUANGAN HIJAU- PELATIHAN GREEN FINANCE.pptxerlyndakasim2
 
04 AKMEN new.pdf........................
04 AKMEN new.pdf........................04 AKMEN new.pdf........................
04 AKMEN new.pdf........................rendisalay
 
BERKELAS!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Aluminium Kamar Mandi di...
BERKELAS!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Aluminium Kamar Mandi di...BERKELAS!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Aluminium Kamar Mandi di...
BERKELAS!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Aluminium Kamar Mandi di...FORTRESS
 
tugas kelompok Analisis bisnis aplikasi bukalapak
tugas kelompok Analisis bisnis aplikasi bukalapaktugas kelompok Analisis bisnis aplikasi bukalapak
tugas kelompok Analisis bisnis aplikasi bukalapaksmkpelayarandemak1
 
Perspektif Psikologi dalam Perubahan Organisasi
Perspektif Psikologi dalam Perubahan OrganisasiPerspektif Psikologi dalam Perubahan Organisasi
Perspektif Psikologi dalam Perubahan OrganisasiSeta Wicaksana
 
Nilai-Waktu-Uang.pptx kdgmkgkdm ksfmkdkmdg
Nilai-Waktu-Uang.pptx kdgmkgkdm ksfmkdkmdgNilai-Waktu-Uang.pptx kdgmkgkdm ksfmkdkmdg
Nilai-Waktu-Uang.pptx kdgmkgkdm ksfmkdkmdgNajlaNazhira
 
UNIKBET : Agen Slot Resmi Pragmatic Play Ada Deposit Sesama Linkaja
UNIKBET : Agen Slot Resmi Pragmatic Play Ada Deposit Sesama LinkajaUNIKBET : Agen Slot Resmi Pragmatic Play Ada Deposit Sesama Linkaja
UNIKBET : Agen Slot Resmi Pragmatic Play Ada Deposit Sesama Linkajaunikbetslotbankmaybank
 
Bab 11 Liabilitas Jangka Pendek dan Penggajian.pptx
Bab 11 Liabilitas Jangka Pendek dan   Penggajian.pptxBab 11 Liabilitas Jangka Pendek dan   Penggajian.pptx
Bab 11 Liabilitas Jangka Pendek dan Penggajian.pptxlulustugasakhirkulia
 
ASKEP WAHAM KELOMPOK 4 vvvvvvvvvPPT.pptx
ASKEP WAHAM KELOMPOK 4 vvvvvvvvvPPT.pptxASKEP WAHAM KELOMPOK 4 vvvvvvvvvPPT.pptx
ASKEP WAHAM KELOMPOK 4 vvvvvvvvvPPT.pptxMuhammadDidikJasaGb
 
Tajuk: SV388: Platform Unggul Taruhan Sabung Ayam Online di Indonesia
Tajuk: SV388: Platform Unggul Taruhan Sabung Ayam Online di IndonesiaTajuk: SV388: Platform Unggul Taruhan Sabung Ayam Online di Indonesia
Tajuk: SV388: Platform Unggul Taruhan Sabung Ayam Online di IndonesiaHaseebBashir5
 
PREMIUM!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Kamar Mandi di ...
PREMIUM!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Kamar Mandi di ...PREMIUM!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Kamar Mandi di ...
PREMIUM!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Kamar Mandi di ...FORTRESS
 
KUAT!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Besi Plat Polos di Serang .pptx
KUAT!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Besi Plat Polos di Serang .pptxKUAT!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Besi Plat Polos di Serang .pptx
KUAT!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Besi Plat Polos di Serang .pptxFORTRESS
 

Kürzlich hochgeladen (20)

"Mitos dan Kemenangan: Zeus Slot dan Dunia Yunani"
"Mitos dan Kemenangan: Zeus Slot dan Dunia Yunani""Mitos dan Kemenangan: Zeus Slot dan Dunia Yunani"
"Mitos dan Kemenangan: Zeus Slot dan Dunia Yunani"
 
DRAFT Penilaian Assessor _MIiii_UIM.pptx
DRAFT Penilaian Assessor _MIiii_UIM.pptxDRAFT Penilaian Assessor _MIiii_UIM.pptx
DRAFT Penilaian Assessor _MIiii_UIM.pptx
 
Perkembangan Perbankan di Indonesia Perkembangan Perbankan di Indonesia
Perkembangan Perbankan di Indonesia Perkembangan Perbankan di IndonesiaPerkembangan Perbankan di Indonesia Perkembangan Perbankan di Indonesia
Perkembangan Perbankan di Indonesia Perkembangan Perbankan di Indonesia
 
SV388: Platform Taruhan Sabung Ayam Online yang Populer
SV388: Platform Taruhan Sabung Ayam Online yang PopulerSV388: Platform Taruhan Sabung Ayam Online yang Populer
SV388: Platform Taruhan Sabung Ayam Online yang Populer
 
UNGGUL!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Putih di Pangkal...
UNGGUL!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Putih di Pangkal...UNGGUL!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Putih di Pangkal...
UNGGUL!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Putih di Pangkal...
 
abortion pills in Kuwait City+966572737505 get Cytotec
abortion pills in Kuwait City+966572737505 get Cytotecabortion pills in Kuwait City+966572737505 get Cytotec
abortion pills in Kuwait City+966572737505 get Cytotec
 
UNIKBET : Bandar Slot Pragmatic Play Bisa Deposit Ovo 24 Jam Online Banyak Bonus
UNIKBET : Bandar Slot Pragmatic Play Bisa Deposit Ovo 24 Jam Online Banyak BonusUNIKBET : Bandar Slot Pragmatic Play Bisa Deposit Ovo 24 Jam Online Banyak Bonus
UNIKBET : Bandar Slot Pragmatic Play Bisa Deposit Ovo 24 Jam Online Banyak Bonus
 
MODUL PEGAJARAN ASURANSI BELUM KOMPLIT 1
MODUL PEGAJARAN ASURANSI BELUM KOMPLIT 1MODUL PEGAJARAN ASURANSI BELUM KOMPLIT 1
MODUL PEGAJARAN ASURANSI BELUM KOMPLIT 1
 
2. PRINSIP KEUANGAN HIJAU- PELATIHAN GREEN FINANCE.pptx
2. PRINSIP KEUANGAN HIJAU- PELATIHAN GREEN FINANCE.pptx2. PRINSIP KEUANGAN HIJAU- PELATIHAN GREEN FINANCE.pptx
2. PRINSIP KEUANGAN HIJAU- PELATIHAN GREEN FINANCE.pptx
 
04 AKMEN new.pdf........................
04 AKMEN new.pdf........................04 AKMEN new.pdf........................
04 AKMEN new.pdf........................
 
BERKELAS!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Aluminium Kamar Mandi di...
BERKELAS!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Aluminium Kamar Mandi di...BERKELAS!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Aluminium Kamar Mandi di...
BERKELAS!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Aluminium Kamar Mandi di...
 
tugas kelompok Analisis bisnis aplikasi bukalapak
tugas kelompok Analisis bisnis aplikasi bukalapaktugas kelompok Analisis bisnis aplikasi bukalapak
tugas kelompok Analisis bisnis aplikasi bukalapak
 
Perspektif Psikologi dalam Perubahan Organisasi
Perspektif Psikologi dalam Perubahan OrganisasiPerspektif Psikologi dalam Perubahan Organisasi
Perspektif Psikologi dalam Perubahan Organisasi
 
Nilai-Waktu-Uang.pptx kdgmkgkdm ksfmkdkmdg
Nilai-Waktu-Uang.pptx kdgmkgkdm ksfmkdkmdgNilai-Waktu-Uang.pptx kdgmkgkdm ksfmkdkmdg
Nilai-Waktu-Uang.pptx kdgmkgkdm ksfmkdkmdg
 
UNIKBET : Agen Slot Resmi Pragmatic Play Ada Deposit Sesama Linkaja
UNIKBET : Agen Slot Resmi Pragmatic Play Ada Deposit Sesama LinkajaUNIKBET : Agen Slot Resmi Pragmatic Play Ada Deposit Sesama Linkaja
UNIKBET : Agen Slot Resmi Pragmatic Play Ada Deposit Sesama Linkaja
 
Bab 11 Liabilitas Jangka Pendek dan Penggajian.pptx
Bab 11 Liabilitas Jangka Pendek dan   Penggajian.pptxBab 11 Liabilitas Jangka Pendek dan   Penggajian.pptx
Bab 11 Liabilitas Jangka Pendek dan Penggajian.pptx
 
ASKEP WAHAM KELOMPOK 4 vvvvvvvvvPPT.pptx
ASKEP WAHAM KELOMPOK 4 vvvvvvvvvPPT.pptxASKEP WAHAM KELOMPOK 4 vvvvvvvvvPPT.pptx
ASKEP WAHAM KELOMPOK 4 vvvvvvvvvPPT.pptx
 
Tajuk: SV388: Platform Unggul Taruhan Sabung Ayam Online di Indonesia
Tajuk: SV388: Platform Unggul Taruhan Sabung Ayam Online di IndonesiaTajuk: SV388: Platform Unggul Taruhan Sabung Ayam Online di Indonesia
Tajuk: SV388: Platform Unggul Taruhan Sabung Ayam Online di Indonesia
 
PREMIUM!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Kamar Mandi di ...
PREMIUM!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Kamar Mandi di ...PREMIUM!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Kamar Mandi di ...
PREMIUM!!! WA 0821 7001 0763 (FORTRESS) Bahan Pintu Aluminium Kamar Mandi di ...
 
KUAT!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Besi Plat Polos di Serang .pptx
KUAT!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Besi Plat Polos di Serang .pptxKUAT!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Besi Plat Polos di Serang .pptx
KUAT!!! WA 0821 7001 0763 (FORTRESS) Harga Pintu Besi Plat Polos di Serang .pptx
 

ER DIAGRAM

  • 1. ©Silberschatz, Korth and Sudarshan2.1Database System Concepts Bab 2 : Model Entity-RelationshipBab 2 : Model Entity-Relationship Kumpulan Entity Kumpulan Relationship Hasil Desain Kendala Pemetaan Kunci Diagram E-R Keistimewaan Perluasan E-R Desain dari Skema Database E-R Reduksi dari Skema E-R ke Tabel
  • 2. ©Silberschatz, Korth and Sudarshan2.2Database System Concepts Entity SetsEntity Sets Database dapat dimodelkan sebagai:  kumpulan dari entity (entitas)  hubungan antar entity (entitas) Entity adalah suatu obyek yang dapat dikenali dari obyek yang lain. Contoh : seseorang yang khusus, perusahaan, peristiwa, tanaman. Entity mempunyai atribut Contoh : seseorang mempunyai nama dan alamat Kumpulan entity adalah suatu kumpulan entity dengan tipe yang sama yang berbagi properti yang sama pula. Contoh : kumpulan orang, perusahaan, tanaman, tempat liburan
  • 3. ©Silberschatz, Korth and Sudarshan2.3Database System Concepts Kumpulan Entitas Pelangganan (Kumpulan Entitas Pelangganan (customer)customer) dan Pinjaman (dan Pinjaman (loan)loan) customer-id customer- customer- customer- loan- amount name street city number
  • 4. ©Silberschatz, Korth and Sudarshan2.4Database System Concepts AttributesAttributes Entity ditampilkan oleh sekumpulan attribute, yang mana properti deskriptifnya dikuasai oleh seluruh anggota dalam kumpulan entity. Contoh : customer = (customer-id, customer-name, customer-street, customer-city) loan = (loan-number, amount) Domain –adalah satuan nilai yang diperbolehkan pada setiap attribute Tipe attribute :  Simple (sederhana) dan composite (gabungan) attributes.  Single-valued (satu-fungsi ) dan multi-valued (multi-fungsi ) attributes Contoh : atribut multi-fungsi : nomor telepon  Derived (asal) attributes Dapat diperhitungkan dari atribut lain Contoh : umur, tanggal kelahiran
  • 5. ©Silberschatz, Korth and Sudarshan2.5Database System Concepts Composite AttributesComposite Attributes
  • 6. ©Silberschatz, Korth and Sudarshan2.6Database System Concepts Relationship SetsRelationship Sets Relationship adalah kesesuaian antar beberapa entity Contoh: Hayes depositor A-102 customer entity relationship set account entity Relationship set adalah hubungan matematika antara entity n>2, tiap bagiannya diambil dari satuan entity {(e1, e2, … en) | e1 ∈ E1, e2 ∈ E2, …, en ∈ En} dimana (e1, e2, …, en) adalah relationship  Contoh : (Hayes, A-102) ∈ depositor
  • 7. ©Silberschatz, Korth and Sudarshan2.7Database System Concepts Relationship SetRelationship Set borrowerborrower
  • 8. ©Silberschatz, Korth and Sudarshan2.8Database System Concepts Relationship Sets (lanjutan)Relationship Sets (lanjutan) Attribute dapat merupakan properti dari relationship set. Sebagai contoh: depositor merupakan relationship set antara entity sets customer dan account mungkin beratribut access-date
  • 9. ©Silberschatz, Korth and Sudarshan2.9Database System Concepts TingkatanTingkatan Relationship SetRelationship Set Mengacu pada jumlah entity sets yang terlibat dalam relationship set. Relationship sets yang melibatkan dua entity sets adalah binary (atau tingkat dua). Umumnya, hampir semua relationship sets dalam sistem database adalah binary. Relationship sets mungkin melibatkan lebih dari dua entity sets.  Contoh : misal seorang pegawai bank bekerja (bertanggung jawab) dalam beberapa cabang, dengan tugas yang berlainan dalam setiap cabang yang berlainan pula. Maka disini terdapat relationship set ternary antara entity sets pegawai (employee), tugas (job) dan cabang (branch) Relationships antara lebih dari dua entity sets sangat jarang. Kebanyakan hubungan adalah binary (akan dibahas lebih jauh nanti)
  • 10. ©Silberschatz, Korth and Sudarshan2.10Database System Concepts Mapping Cardinalities (CardinalitasMapping Cardinalities (Cardinalitas Pemetaan)Pemetaan) Mengungkap jumlah entitas ke entitas yang lain bisa dihubungkan melalui relationship set. Paling banyak digunakan dalam menggambarkan relationship sets biner .. Untuk relationship set biner cardinalitas pemetaan harus merupakan salah satu dari tipe berikut:  One to one (satu ke satu)  One to many (satu ke banyak)  Many to one (banyak ke satu)  Many to many (banyak ke banyak)
  • 11. ©Silberschatz, Korth and Sudarshan2.11Database System Concepts Mapping Cardinalities (CardinalitasMapping Cardinalities (Cardinalitas Pemetaan)Pemetaan) One to one One to many Note: Beberapa elemen di A dan B mungkin tidak dipetakan ke elemen manapun di himpunan lain
  • 12. ©Silberschatz, Korth and Sudarshan2.12Database System Concepts Mapping Cardinalities (CardinalitasMapping Cardinalities (Cardinalitas Pemetaan)Pemetaan) Many to one Many to many Note: Beberapa elemen di A dan B mungkin tidak dipetakan pada elemen mana pun di himpunan lain.
  • 13. ©Silberschatz, Korth and Sudarshan2.13Database System Concepts Mapping Cardinalities mempengaruhiMapping Cardinalities mempengaruhi ER DesignER Design Dapat membuat access-date sebagai atribut dari account, bukan atribut relationship , jika tiap account hanya mempunyai satu pelanggan Misal, hubungan dari account ke pelanggan adalah banyak ke satu, atau secara equivalent, pelanggan ke account adalah satu ke banyak.
  • 14. ©Silberschatz, Korth and Sudarshan2.14Database System Concepts E-R DiagramsE-R Diagrams Rectangles melambangkan set-set entitas . Diamonds melambangkan set-set hubungan (relationship) . Lines menghubungkan atribut dengan set-set entitas serta set-set entitas dengan set-set hubungan (relationship). Ellipses mewakili attributes Double ellipses mewakili atribut multivalued . Dashed ellipses menunjukkan sifat yang didapat.. Underline menunjukkan sifat kunci pokok (akan dipelajari nanti)
  • 15. ©Silberschatz, Korth and Sudarshan2.15Database System Concepts E-R Diagram dengan Composite,E-R Diagram dengan Composite, Multivalued, dan Derived AttributesMultivalued, dan Derived Attributes
  • 16. ©Silberschatz, Korth and Sudarshan2.16Database System Concepts Relationship Sets dengan Attributes RolesRelationship Sets dengan Attributes Roles
  • 17. ©Silberschatz, Korth and Sudarshan2.17Database System Concepts RolesRoles Satuan entity dalam suatu relationship tidak perlu terpisah Label “manager” dan “worker” disebut sebagai tugas (roles); mereka menetapkan bagaimana entitas pegawai berinteraksi dengan pekerjaan untuk relationship sets Roles ditunjukkan di E-R diagram dengan memberi label pada garis yang menyambungkan diamond ke segi empat. Label role adalah merupakan pilihan, dan dipergunakan untuk menjelaskan ilmu semantik relationship
  • 18. ©Silberschatz, Korth and Sudarshan2.18Database System Concepts Cardinality Constraints (keterbatasan kardinalitas)Cardinality Constraints (keterbatasan kardinalitas) Kami mengungkapkan keterbatasan cardinalitas dengan menggambarkan baik itu batas yang ditujukan (→), menandakan “one,” atau garis yang tak ditujukan (—), menandakan “many,” di antara relationship set dan set entitas. E.g.: Seperti : Relationship satu-ke-satu :  seorang pelanggan dihubungkan dengan tak lebih dari satu pinjaman via hubungan borrower  pinjaman dihubungkan dengan tak lebih dari satu orang pelanggan via borrower
  • 19. ©Silberschatz, Korth and Sudarshan2.19Database System Concepts One-To-Many Relationship (Hubungan satu ke banyakOne-To-Many Relationship (Hubungan satu ke banyak)) Pada satu-ke-banyak hubungan pinjaman dihubungkan dengan tak lebih dari satu orang pelanggan via peminjam, seorang pelanggan dihubungkan dengan beberapa (termasuk 0) yang meminjami via borrower
  • 20. ©Silberschatz, Korth and Sudarshan2.20Database System Concepts Many-To-One RelationshipsMany-To-One Relationships ((HubunganHubungan Banyak-Ke-BanyakBanyak-Ke-Banyak)) Di dalam many-to-one relationship seorang pelanggan dihubungkan dengan beberapa (mungkin 0) pinjaman via peminjam, pinjaman dihubungkan dengan beberapa (mungkin 0) pelanggan via peminjam
  • 21. ©Silberschatz, Korth and Sudarshan2.21Database System Concepts Many-To-Many Relationship (Many-To-Many Relationship (HubunganHubungan Banyak-Ke-Banyak-Ke- BanyakBanyak)) Seorang pelanggan dihubungkan dengan beberapa (mungkin 0) pinjaman via peminjam Pinjaman dihubungkan dengan beberapa (mungkin 0) pelanggan via peminjam
  • 22. ©Silberschatz, Korth and Sudarshan2.22Database System Concepts Peran serta Set Entitas padaPeran serta Set Entitas pada Relationship SetRelationship Set Total participation (Total partisipasi): (ditunjukkan dengan garis dobel): setiap entitas di set entitas mengambil bagian paling sedikit satu relationship pada relationship set Misal. Partisipasi pinjaman pada peminjam adalah keseluruhan setiap pinjaman harus mempunyai seorang pelanggan yang menghubungkan ke itu (pinjaman) via peminjam Partial participation (Partial partisipasi): beberapa entitas mungkin tidak mengambil bagian dalam relationship (hubungan) yang mana pun pada relationship set.. misal partisipasi pelanggan pada peminjam adalah parsial
  • 23. ©Silberschatz, Korth and Sudarshan2.23Database System Concepts Notasi Alternatif untuk BatasanNotasi Alternatif untuk Batasan CardinalitasCardinalitas Batas cardinalitas juga bisa mengungkapkan keterbatasan partisipasi
  • 24. ©Silberschatz, Korth and Sudarshan2.24Database System Concepts Keys (kunci-kunci)Keys (kunci-kunci) Super key (super kunci) dari set entitas adalah satu atau lebih atribut yang mana nilainya secara unik menentukan masing-masing entitas . Candidate key (calon kunci) dari suatu set entitas adalah Super key minimal Customer-id (id pelanggan) adalah Candidate key dari pelanggan account-number (nomer rekening ): adalah candidate key dari account Meski beberapa candidate key mungkin ada, salah satu candidate key dipilih untuk menjadi primary key (kunci pokok).
  • 25. ©Silberschatz, Korth and Sudarshan2.25Database System Concepts Key untuk Relationship SetKey untuk Relationship Set Kombinasi primary keys (kunci pokok) dari set entitas yang berpartisipasi membentuk super key (kunci super) pada relationship set (set hubungan).  customer-id, account-number (pelanggan-id, rekening-jumlah) adalah super key (kunci pokok) dari depositor  CATATAN: ini berarti sepasang set-set entitas bisa mempunyai tak lebih dari satu relationship (hubungan) pada suatu relationship set tertentu. Misal. jika kami menginginkan untuk melacak semua access- dates ke masing-masing rekening oleh masing-masing pelanggan, kita tidak bisa mengambil relationship (hubungan) untuk masing-masing akses. Tapi kita tetap bisa menggunakan sifat multivalued Harus mempertimbangkan pemetaan cardinalitas dari relationship set di saat mengambil keputusan apa calon kuncinya (candidate key) Tetap perlu mempertimbangkan ilmu semantik dari set hubungan (relationship set) dalam memilih primary key (kunci pokok) bila timbul masalah adanya lebih dari satu candidate key (calon kunci)
  • 26. ©Silberschatz, Korth and Sudarshan2.26Database System Concepts Diagram E-R dengan Hubungan TernaryDiagram E-R dengan Hubungan Ternary ((Ternary Relationship)Ternary Relationship)
  • 27. ©Silberschatz, Korth and Sudarshan2.27Database System Concepts Keterbatasan Cardinalitas pada HubunganKeterbatasan Cardinalitas pada Hubungan Ternary (Ternary Relationship)Ternary (Ternary Relationship) Diperbolehkan tak lebih dari satu anak panah dari hubungan ternary (atau derajat yang lebih besar) untuk menunjukkan keterbatasan cardinalitas Misal. Suatu anak panah dari wroks-on ke job menunjukkan masing-masing pegawai mengerjakan tak lebih dari satu pekerjaan di cabang yang mana pun. Jika ada lebih dari satu anak panah, ada dua cara untuk mendefinisikan artinya.  misal. Hubungan ternary R di antara A, B dan C dengan anak panah ke B dan C bisa berarti :  1. Tiap-tiap entitas A dihubungkan dengan entitas unik dari B dan C atau  2. Masing-masing pasang entitas dari (A, B) dihubungkan dengan entitas unik C, dan masing-masing pasang (A, C) dihubungkan dengan entitas unik B  Tiap alternatif sudah dipakai pada formalisme berbeda  Untuk menghindari kebingungan tidak diijinkan menggunakan lebih dari satu anak panah
  • 28. ©Silberschatz, Korth and Sudarshan2.28Database System Concepts Binary Vs. Hubungan NonbinaryBinary Vs. Hubungan Nonbinary (Non-Binary(Non-Binary Relationships)Relationships) Beberapa hubungan yang kelihatannya non biner mungkin sebaiknya ditampilkan menggunakan hubungan biner Misal. Hubungan ternary orang tua, menghubungkan seorang anak ke bapak dan ibunya, hal ini paling baik diganti oleh dua hubungan biner, bapak dan ibu Dengan menggunakan dua hubungan biner memungkinkan informasi sebagian (misal hanya ibu yang tahu) Tetapi ada beberapa hubungan yang secara alami non-biner misal. works-on
  • 29. ©Silberschatz, Korth and Sudarshan2.29Database System Concepts Mengubah Hubungan Non Biner ke Bentuk BinerMengubah Hubungan Non Biner ke Bentuk Biner Secara umum, hubungan non biner mana pun bisa dilambangkan memakai hubungan biner dengan membuat set entitas buatan.  Mengganti R di antara set-set entitas A, B dan C di samping set entitas E, dan tiga set hubungan (relationship sets ): 1. RA, menghubungkan E dan A 2.RB, menghubungkan E dan B 3. RC, menghubungkan E dan C  Menciptakan atribut pengenal khusus bagi E  Menambah atribut mana pun dari R ke E  Untuk setiap hubungan (ai, bi, ci) di R, menciptakan 1. Entitas baru ei di set entitas E 2. menambah (ei, ai) ke RA 3. menambah (ei, bi) ke RB 4. menambah (ei, ci) ke RC
  • 30. ©Silberschatz, Korth and Sudarshan2.30Database System Concepts Mengubah Hubungan Non Biner (lanjutan)Mengubah Hubungan Non Biner (lanjutan) Juga perlu menterjemahkan keterbatasan  Menterjemahkan semua keterbatasan bisa jadi tidak mungkin  Mungkin ada permisalan di skema terjemahan yang tidak dapat merespon segala kejadian di R yang mana pun Latihan : menambahkan keterbatasan ke hubungan RA, RB dan RC untuk menjamin bahwa entitas yang baru diciptakan berhubungan kepada persis satu entitas pada masing-masing set-set entitas A, B dan C  Kami bisa menghindari terciptanya pengenalan atribut dengan membuatkan E suatu set entitas yang lemah (akan digambarkan tak lama lagi) yang dapat dikenali dari tiga set hubungan
  • 31. ©Silberschatz, Korth and Sudarshan2.31Database System Concepts Design IssuesDesign Issues Menggunakan set-set entitas vs. Atribut Pilihan utamanya tergantung pada struktur perusahaan yang dimodelkan, dan pada ilmu semantik yang dihubungkan dengan sifat dalam pertanyaan. Menggunakan set-set entitas vs. relationship sets. Pedoman yang mungkin adalah mengarahkan suatu set hubungan untuk menggambarkan sebuah tindakan yang terjadi antar entitas Binary versus n-ary relationship sets Walaupun mungkin untuk mengganti set hubungan (relationship set) nonbiner manapun (n-ary, untuk n > 2) dengan beberapa set hubungan biner yang jelas, set hubungan n-ary menunjukkan lebih jelas bahwa beberapa entitas mengambil bagian pada satu hubungan. Penempatan atribut hubungan (relationship attributes)
  • 32. ©Silberschatz, Korth and Sudarshan2.32Database System Concepts Weak Entity Sets (Set-set EntitasWeak Entity Sets (Set-set Entitas Lemah)Lemah) Set entitas yang tidak mempunyai kunci pokok (primary key) disebut sebagai set entitas lemah (weak entity set.). Keberadaan set entitas lemah tergantung pada keberadaan set entitas pengenal (identifying entity set)  harus berhubungan dengan set entitas pengenal melalui jumlah total, satu-ke-banyak set hubungan (one to many relationship) dari set pengenal ke set entitas lemah  Hubungan pengenal (Identifying relationship ) digambarkan dengan memakai dobel diamond Discriminator (atau kunci parsial) pada set entitas lemah adalah set dari sifat (atribut) yang membedakan antara semua entitas dari set entitas lemah. Kunci pokok (primary key ) dari set entitas lemah terbentuk oleh kunci pokok (primary key ) dari set entitas kuat yang mana set entitas lemah keberadaannya tergantung, ditambah discriminator dari set entitas lemah.
  • 33. ©Silberschatz, Korth and Sudarshan2.33Database System Concepts Weak Entity Sets /Weak Entity Sets / Set-Set Entitas lemahSet-Set Entitas lemah (lanjutan)(lanjutan) Kita menggambarkan set entitas lemah dengan segi empat dobel Kita menekankan discriminator pada set entitas lemah dengan garis pisah. payment-number – discriminator dari set entitas payment Primary key untuk payment – (loan-number, payment-number)
  • 34. ©Silberschatz, Korth and Sudarshan2.34Database System Concepts Weak Entity Sets /Weak Entity Sets / Set-Set Entitas LemahSet-Set Entitas Lemah (lanjutan)(lanjutan) Catatan: primary key dari set entitas kuat tidak disimpan secara gamblang/jelas dengan set entitas lemah, karena hal ini tersirat pada relationship (hubungan) pengenal. Jika loan-number disimpan secara jelas/gamblang, payment bisa dibuat entitas kuat, tetapi kemudian hubungan (relationship ) antara payment dan loan akan disalin oleh hubungan (relationship) tersirat yang ditegaskan oleh sifat (attribut) loan-number biasa ke payment dan loan
  • 35. ©Silberschatz, Korth and Sudarshan2.35Database System Concepts Contoh Lain Set Entitas LemahContoh Lain Set Entitas Lemah Di universitas, kursus (course) adalah entitas kuat dan penawaran-kursus (course-offering) bisa diperagakan sebagai entitas lemah Discriminator dari course-offering adalah semester (termasuk tahun) dan bagian-jumlah (section-number) (jika terdapat lebih dari satu bagian) Jika kita peragakan course-offering sebagai entitas kuat kita akan peragakan course-number sebagai sifat. Kemudian relationship dengan course akan tersirat pada attribute course-number
  • 36. ©Silberschatz, Korth and Sudarshan2.36Database System Concepts SpesialisasiSpesialisasi Proses desain atas-bawah (Top-down); kami mengarahkan sub- pengelompokan dalam set entitas yang khas dari entitas lain di dalam set. Sub-pengelompokan ini menjadi set-set entitas dengan level lebih rendah yang mempunyai sifat/atribut atau mengambil bagian dalam hubungan/relationship yang tidak diterapkan dalam set entitas dengan level lebih tinggi. Digambarkan dengan komponen segitiga (triangle) berlabel ISA (misal. Customer “adalah seseorang/ person”). Attribute inheritance (Attribut warisan) – set entitas dengan level lebih rendah mewarisi semua sifat / atribut dan partisipasi hubungan/ relationship dari set entitas dengan level lebih tinggi yang mana hal ini terhubung.
  • 37. ©Silberschatz, Korth and Sudarshan2.37Database System Concepts Contoh SpesialisasiContoh Spesialisasi
  • 38. ©Silberschatz, Korth and Sudarshan2.38Database System Concepts GeneralisasiGeneralisasi Proses desain dasar-ke atas (bottom-up) – menggabungkan sejumlah set entitas yang membagi fitur yang sama menjadi set entitas dengan level lebih tinggi. Spesialisasi dan generalisasi adalah kebalikan sederhana satu dengan yang lain; mereka diwakilkan dalam diagram E-R dengan cara yang sama. Syarat-syarat spesialisasi dan generalisasi dapat dipakai bergantian
  • 39. ©Silberschatz, Korth and Sudarshan2.39Database System Concepts Spesialisasi dan GeneralisasiSpesialisasi dan Generalisasi (lanjutan)(lanjutan) Bisa mempunyai spesialisasi berlipat ganda pada set entitas berdasarkan fitur yang berbeda. Misal. Pegawai-permanen (permanent-employee) vs. Pegawai- sementara (temporary-employee), atau bisa juga pegawai kantor vs. sekretaris vs. teller (officer vs. secretary vs. teller ). Tiap pegawai khusus (particular employee ) akan menjadi  seorang anggota dari satu pegawai-permanen (permanent-employee) atau pegawai-sementara (temporary-employee),  dan juga seorang anggota dari satu pegawai kantor (officer), sekretaris(secretary), atau teller Hubungan/relationship ISA juga merujuk kepada hubungan superkelas - subkelas (superclass - subclass )
  • 40. ©Silberschatz, Korth and Sudarshan2.40Database System Concepts Keterbatasan desain padaKeterbatasan desain pada Spesialisasi/GeneralisasiSpesialisasi/Generalisasi Keterbatasan yang mana entitas bisa menjadi anggota dari set entitas dengan level lebih rendah yang diberikan.  condition-defined (kondisi-yang ditentukan) Misal. semua pelanggan di atas 65 tahun adalah anggota dari set entitas warganegara-senior (senior-citizen); warganegara-senior ISA orang (senior-citizen ISA person).  user-defined (pemakai-yang ditentukan) Keterbatasan pada entitas ataupun bukan bisa masuk pada lebih dari satu set entitas dengan level lebih rendah dalam satu generalisasi.  Disjoint suatu entitas bisa hanya masuk dalam satu set entitas dengan level lebih rendah dicatat pada diagram E-R dengan tulisan disjoint di samping segitiga ISA  Overlapping (penumpukan) suatu entitas bisa masuk pada lebih dari satu set entitas dengan level lebih rendah
  • 41. ©Silberschatz, Korth and Sudarshan2.41Database System Concepts Keterbatasan Desain padaKeterbatasan Desain pada Spesialisasi/Generalisasi (lanjutan)Spesialisasi/Generalisasi (lanjutan) Completeness constraint (Keterbatasan sempurna) -menetapkan apakah entitas pada set entitas level lebih tinggi harus termasuk dalam paling sedikit salah satu dari set-set entitas level lebih rendah dalam generalisasi.  total :entitas harus masuk dalam salah satu dari set entitas level lebih rendah  partial: entitas tidak perlu termasuk dalam salah satu set entitas level lebih rendah
  • 42. ©Silberschatz, Korth and Sudarshan2.42Database System Concepts Aggregation (Aggregation (Aggregasi/Penjumlahan)Aggregasi/Penjumlahan) Menganggap hubungan ternary works-on , yang telah kami lihat di awal Misal kami ingin mencatat manajer untuk tugas yang dilakukan oleh seorang pegawai di suatu cabang
  • 43. ©Silberschatz, Korth and Sudarshan2.43Database System Concepts Aggregation /Aggregation / PenjumlahanPenjumlahan (lanjutan)(lanjutan) Set hubungan works-on dan manages mewakili penumpukan information  Tiap hubungan manages bersesuaian dengan hubungan works-on  Tetapi, beberapa hubungan works-on mungkin tidak bersesuaian dengan hubungan manages yang manapun Jadi kami tidak dapat membuang hubungan works-on Menghapus kelebihan ini melalui penjumlahan (agregation)  Memperlakukan hubungan sebagai entitas abstrak  membolehkan hubungan antar hubungan  mengabstraksi hubungan ke dalam entitas baru Tanpa memperkenalkan kelebihan (redundancy), diagram berikut mewakili:  seorang pegawai yang mengerjakan pekerjaan khusus di cabang khusus  seorang pegawai (employee), cabang (branch), pekerjaan kombinasi (job combination ) mungkin mempunyai manager
  • 44. ©Silberschatz, Korth and Sudarshan2.44Database System Concepts Diagram E-R Dengan AggregationDiagram E-R Dengan Aggregation
  • 45. ©Silberschatz, Korth and Sudarshan2.45Database System Concepts Penetapan E-R DesignPenetapan E-R Design Penggunaan sifat atau set entitas untuk melambangkan obyek. Konsep dunia nyata sebenarnya diungkapkan paling baik dengan set entitas atau set hubungan. Penggunaan hubungan ternary vs pasangan hubungan biner. Penggunaan set entitas kuat atau lemah. Penggunaan spesialisasi/generalisasi – menyumbang ke modularity (modularitas) pada bentuk. Penggunaan penjumlahan/agregation – bisa menganggap set entitas jumlah/agregate sebagai satu kesatuan tanpa memperhatikan detail dari struktur internalnya.
  • 46. ©Silberschatz, Korth and Sudarshan2.46Database System Concepts Diagram E-R bagi Perusahaan PerbankanDiagram E-R bagi Perusahaan Perbankan
  • 47. ©Silberschatz, Korth and Sudarshan2.47Database System Concepts Ringkasan Simbol2 yang digunakanRingkasan Simbol2 yang digunakan dalam notasi E-Rdalam notasi E-R
  • 48. ©Silberschatz, Korth and Sudarshan2.48Database System Concepts Ringkasan Simbol2 (lanjutan)Ringkasan Simbol2 (lanjutan)
  • 49. ©Silberschatz, Korth and Sudarshan2.49Database System Concepts Alternatif notasi E-RAlternatif notasi E-R
  • 50. ©Silberschatz, Korth and Sudarshan2.50Database System Concepts UMLUML UML: Unified Modeling Language UML mempunyai banyak bagian yang secara grafis memperagakan aspek berbeda dari seluruh software system UML Class Diagrams bersesuaian dengan diagram E-R, tetapi dengan beberapa perbedaan.
  • 51. ©Silberschatz, Korth and Sudarshan2.51Database System Concepts Ringkasan dari UML Class DiagramRingkasan dari UML Class Diagram NotationNotation
  • 52. ©Silberschatz, Korth and Sudarshan2.52Database System Concepts UML Class Diagrams (lanjutan)UML Class Diagrams (lanjutan) Set-set entitas diperlihatkan sebagai kotak-kotak, dan sifat diperlihatkan dalam kotak, atau bisa juga seperti elipsis terpisah pada E-R diagram. Set-set hubungan biner dilambangkan di UML hanya dengan memberi garis batas yang menyambung set-set entitas. Nama set hubungan ditulis berdampingan dengan garis. Peran yang dimainkan oleh set entitas pada set hubungan juga dapat ditetapkan dengan menulis nama peran di atas garis, berdampingan dengan set entitas. Nama set hubungan secara alternatif mungkin ditulis di sebuah kotak, beserta dengan sifat dari set hubungan, dan kotak disambungkan, memakai garis bertitik-titik, ke garis yang menggambarkan set hubungan. Hubungan nonbiner secara langsung tidak bisa dilambangkan di UML -- mereka mesti dibalik ke hubungan biner .
  • 53. ©Silberschatz, Korth and Sudarshan2.53Database System Concepts UML Class Diagram NotationUML Class Diagram Notation (lanjutan)(lanjutan) *Note reversal of position in cardinality constraint depiction
  • 54. ©Silberschatz, Korth and Sudarshan2.54Database System Concepts UML Class Diagrams (lanjutan)UML Class Diagrams (lanjutan) Keterbatasan cardinalitas ditetapkan dalam bentuk l…h, di mana l menunjukkan jumlah minimum dan h jumlah maksimum hubungan dimana suatu entitas bisa mengambil bagian. Perhatikan : posisi dari keterbatasan adalah persis kebalikan dari posisi keterbatasan dalam E-R diagram. Keterbatasan 0.. * pada sisi E2 dan 0.. 1 pada sisi E1 berarti bahwa tiap entitas E2 tersebut dapat mengambil bagian paling banyak dalam satu hubungan, sedangkan masing-masing entitas E1 bisa mengambil bagian dalam banyak hubungan; dengan kata lain, hubungannya adalah banyak ke satu dari E2 ke E1. Nilai tunggal, seperti 1 atau * mungkin ditulis di pinggir; nilai tunggal 1 di pinggir diperlakukan sama dengan 1.. 1, sedangkan * adalah sama dengan 0.. *.
  • 55. ©Silberschatz, Korth and Sudarshan2.55Database System Concepts Penurunan Skema E-R ke dalamPenurunan Skema E-R ke dalam TabelTabel Primary keys (Kunci pokok) memungkinkan set-set entitas dan set-set hubungan diungkapkan secara seragam sebagai tabel-tabel yang melambangkan isi database. Database yang menyesuaikan diri ke diagram E-R bisa diwakili oleh sekumpulan tabel. Untuk tiap set entitas dan set hubungan terdapat sebuah tabel unik yang menandakan nama dari set entitas atau set hubungan yang berhubungan. Tiap tabel mempunyai sejumlah kolom (umumnya berhubungan dengan sifat), yang mempunyai nama unik. Membalik diagram E-R menjadi bentuk tabel adalah dasar untuk memperoleh pola database relasional dari E- R diagram.
  • 56. ©Silberschatz, Korth and Sudarshan2.56Database System Concepts Melambangkan Set-Set Entitas sebagaiMelambangkan Set-Set Entitas sebagai TabelTabel Set entitas kuat berkurang menjadi tabel dengan sifat yang sama
  • 57. ©Silberschatz, Korth and Sudarshan2.57Database System Concepts Atribut Kombinasi (Atribut Kombinasi (Composite)Composite) dan Nilaidan Nilai Ganda (Ganda (Multivalued)Multivalued) Atribut kombinasi dikeluarkan dengan membuat atribut terpisah untuk masing-masing komponen atribut  misal. Memberikan set entitas customer dengan atribut kombinasi nama dengan komponen atribut first-name dan last-name, tabel yang berhubungan dengan set entitas mempunyai dua atribut name.first-name and name.last-name Atribut nilai ganda M dari entitas E diwakili oleh tabel EM yang terpisah  Table EM mempunyai atribut yang cocok dengan primary key E dan atribut yang cocok dengan atribut nilai ganda M  misal. Atribut nilai ganda dependent-names dari pegawai diwakili oleh tabel employee-dependent-names( employee-id, dname)  Masing-masing nilai dari atribut nilai ganda dipetakan ke dalam baris terpisah dari tabel EM misal., entitas pegawai dengan primary key John dan tanggungan/dependents Johnson dan Johndotir memetakan ke dua jajaran/baris: : (John, Johnson) dan (John, Johndotir)
  • 58. ©Silberschatz, Korth and Sudarshan2.58Database System Concepts Merepresentasi Set Entitas LemahMerepresentasi Set Entitas Lemah Set entitas lemah menjadi sebuah tabel yang menyertakan kolom untuk primary key dari set entitas kuat pengenal
  • 59. ©Silberschatz, Korth and Sudarshan2.59Database System Concepts Merepresentasikan Set HubunganMerepresentasikan Set Hubungan ((Relationship SetsRelationship Sets)) sebagai Tabelsebagai Tabel Set hubungan banyak-ke-banyak (many to many) diwakilkan sebagai tabel dengan kolom-kolom untuk primary key - primary key dari kedua set entitas yang mengambil bagian, dan setiap sifat deskriptif dari set hubungan. Misal. : tabel untuk set hubungan borrower
  • 60. ©Silberschatz, Korth and Sudarshan2.60Database System Concepts Kelebihan TabelKelebihan Tabel Set-set hubungan banyak-ke-satu (many to one) dan satu-ke- banyak (one to many) yang total di sisi many bisa diwakilkan dengan menambahkan atribut ekstra ke sisi banyak (many), berisi primary key pada sisi one. Misal. : Daripada membuat tabel untuk hubungan account- branch, lebih baik menambahkan atribut branch ke set entitas account
  • 61. ©Silberschatz, Korth and Sudarshan2.61Database System Concepts Redundancy of Tables (Cont.)Redundancy of Tables (Cont.) For one-to-one relationship sets, either side can be chosen to act as the “many” side  That is, extra attribute can be added to either of the tables corresponding to the two entity sets If participation is partial on the many side, replacing a table by an extra attribute in the relation corresponding to the “many” side could result in null values The table corresponding to a relationship set linking a weak entity set to its identifying strong entity set is redundant.  E.g. The payment table already contains the information that would appear in the loan-payment table (i.e., the columns loan-number and payment-number).
  • 62. ©Silberschatz, Korth and Sudarshan2.62Database System Concepts Representing Specialization as TablesTables Method 1:  Form a table for the higher level entity  Form a table for each lower level entity set, include primary key of higher level entity set and local attributes table table attributes person name, street, city customer name, credit-rating employee name, salary  Drawback: getting information about, e.g., employee requires accessing two tables
  • 63. ©Silberschatz, Korth and Sudarshan2.63Database System Concepts Representing Specialization asRepresenting Specialization as Tables (Cont.)Tables (Cont.) Method 2:  Form a table for each entity set with all local and inherited attributes table table attributes person name, street, city customer name, street, city, credit-rating employee name, street, city, salary If specialization is total, no need to create table for generalized entity (person)  Drawback: street and city may be stored redundantly for persons who are both customers and employees
  • 64. ©Silberschatz, Korth and Sudarshan2.64Database System Concepts Relations Corresponding toRelations Corresponding to AggregationAggregation To represent aggregation, create a table containing primary key of the aggregated relationship, the primary key of the associated entity set Any descriptive attributes
  • 65. ©Silberschatz, Korth and Sudarshan2.65Database System Concepts Relations Corresponding toRelations Corresponding to Aggregation (Cont.)Aggregation (Cont.) E.g. to represent aggregation manages between relationship works-on and entity set manager, create a table manages(employee-id, branch-name, title, manager-name) Table works-on is redundant provided we are willing to store null values for attribute manager-name in table manages
  • 66. End of Chapter 2End of Chapter 2
  • 67. ©Silberschatz, Korth and Sudarshan2.67Database System Concepts E-R Diagram for Exercise 2.10E-R Diagram for Exercise 2.10
  • 68. ©Silberschatz, Korth and Sudarshan2.68Database System Concepts E-R Diagram for Exercise 2.15E-R Diagram for Exercise 2.15
  • 69. ©Silberschatz, Korth and Sudarshan2.69Database System Concepts E-R Diagram for Exercise 2.22E-R Diagram for Exercise 2.22
  • 70. ©Silberschatz, Korth and Sudarshan2.70Database System Concepts E-R Diagram for Exercise 2.15E-R Diagram for Exercise 2.15
  • 71. ©Silberschatz, Korth and Sudarshan2.71Database System Concepts Existence DependenciesExistence Dependencies If the existence of entity x depends on the existence of entity y, then x is said to be existence dependent on y.  y is a dominant entity (in example below, loan)  x is a subordinate entity (in example below, payment) loan-payment paymentloan If a loan entity is deleted, then all its associated payment entities must be deleted also.