IF302
Basis Data - Fundamental Database
Concept
Firhat Hidayat, [Link]., M.T.
Referensi
Utama
• Garcia-Molina, H., Ullman, J.D., and Widom, J. Database
Systems The Complete Book, 2nd Edition, Pearson Education,
Inc. 2009.
• Silberschatz, A., Korth, H. F., Sudarshan, S., Database System
Concepts, 6th Edition, McGraw-Hill, 2011.
• Date C.J, Introduction to Database Systems, 8th Edition,
Addison-Wesley Publishing Company, 2004
• Mannino, M.V., Database Design, Application Development, and
Administration, 3rd Edition, McGraw-Hill, 2007.
Learngin Objectives
• Mahasiswa memahami konsep dan istilah dalam ER modeling
• Mahasiswa mampu menggambarkan masalah nyata ke dalam ER
Diagram
• Mahasiswa mampu memanfaatkan komponen- komponen ER
modelling untuk penyelesaian masalah nyata
Agenda
Perkuliahan
1. Phases of database development
2. Entity, atribute & relationship cardinality
3. ERD notation
4. Creating ERD
Phases of Database Development
Conceptual data
modeling
Data Requirements
Entity relationship diagram
Logical database
design
Relational database table
Pyhical database
design
Pyhisical database
Entity & Sets
• Suatu entity adalah sesuatu obyek yang ada dan bisa dibedakan dari
obyek-obyek yang lain, misal John dengan NIK 070707 bisa
diidenti kasikan sebagai orang yang tertentu di dunai ini.
• Entity bisa merupakan seuatu yang kongkrit secara sik (misal: orang,
buku, mobil) atau sesuatu yang abstrak (misal: liburan, konsep, rencana)
• Suatu Entity Set adalah kumpulan dari entity sejenis, misal: semua orang
yang mempunyai akun di suatu bank.
• Suatu entity set tidak harus terpisah sama sekali (disjoint) dengan entity
set yang lain, misal entity set pegawai (semua pegawai suatu bank) dan
entity set customer(semua customer suatu bank) bisa mempunyai
anggota yang sama.
•
fi
fi
Entity & Sets
• Entity Set digambarkan dengan simbol persegi panjang
Mahasiswa
Attribute
• Suatu entity direpresentasikan dengan sekumpulan atribut (karakteristik), misal:
entity customer bisa mempunyai atribut-
atribut: no akun, nama, NIK, no telpon, jalan, kota.
• Suatu atribut bisa mempunyai domain atau batasan nilai yang diperbolehkan,
misal: no akun harus angka 10 dijit.
• Jenis Atribut:
• Simple Attribute − Atribut dengan nilai atomic, tidak bisa dibagi lagi.
Misal, gender : male/female.
• Composite Attribute − Atribut yang terdiri dari beberapa atribut simple.
Misal: nama lengkap bsa terdiri dari rst name dan last name,
• Derived Attribute − Atribut yang tidak berada di database, tapi nilainya
didapatkan dari atribut-atribut lain yang ada di database. Misal : gaji rata-
rata di suatu bagian – dari gaji masing-masing pegawai , umur – dari tanggal
lahir.
fi
Attribute
• Jenis Atribut:
• Single-value attribute − Atribut yang bernilai tunggal. Misal: Nomor
Induk Mahasiswa.
• Multi-value attribute − Atribut yang bisa mempunyai nilai lebih dari
satu. Misal : Mahasiswa bisa mempunyai no telpon lebih dari satu.
• Jenis-jenis atribut diatas bisa dikombinasikan menjadi:
• simple single-valued attributes
• simple multi-valued attributes
• composite single-valued attributes
• composite multi-valued attributes
Attribute
• Atribut digambarkan dengan simbol elips
NIM Name email
Mahasiswa
Entity Keys
• Entity Key adalah satu atau sekumpulan atribut yang secara unik
mengidenti kasi suatu entity diantara kumpulan entity.
• Misal : NIM suatu mahasiswa bisa mengidenti kasi mahasiswa tersebut
diantara mahasiswa-mahasiswa.
• Jenis Entity Key:
• Super Key − Suatu kumpulan (satu atau lebih) atribut yang secara
bersamaan bisa mengidenti kasi suatu entity didalam kumpulan entity.
Misal: NIK dan nama pada entity set mahasiswa dg atribut: NIM, NIK,
nama, tgl lahir, alamat,,..dst;
• Candidate Key − Suatu minimal super key. Suatu entity set bisa
mempunyai lebih dati satu candidate key. Misal: NIM dan NIK
• Primary Key − Salah satu candidate key yang dipilih. Misal: NIM Alternate
Key – Candidate key yang tidak terpilih. Misal: NIK
• Alternate Key – Candidate key yang tidak terpilih. Misal: NIK
fi
fi
fi
Relationships
• Relationship adalah hubungan antar entity.
• Relationship Set adalah kumpulan relationship yang sejenis.
Relationships
• Relationship set symbol
Participation Constraint
• Menjelaskan apakah keberadaan suatu entity tergantung pada
hubungannya dengan entity lain .
• Total Participation - Keberadaan suatu entity tergantung pada
hubungannya dengan entity lain (direpresentasikan dg garis
ganda)
• Partial Participation - Keberadaan suatu entity tidak tergantung
pada hubungannya dengan entity lain (direpresentasikan dengan
garis tunggal)
Participation Constraint
Entity Relationship Entity
Total Participation Partial participation
Weak Entity
• Entitas Lemah (Weak Entity) adalah entitas yang keberadaannya
sangat bergantung dengan entitas lain.
• Entity yang merupakan induknya disebut Identifying Owner
dan relationshipnya disebut Identifying Relationship.
• Weak Entity selalu mempunyai Total Participation constraint
dengan Identifying Owner.
Weak Entity
• Contoh:
NIP …… NAMA …..
Pegawai Memiliki Pendamping
Relationships Degree
Mapping Cardinality Constraints
• Menjelaskan jumlah entity yang berhubungan dari suatu entity
set ke entity set lainnya melalui relationship set.
• Paling berguna untuk menjelaskan bynary relationship set:
Mapping Cardinality Constraints
• Contoh:
• 1:1 Employee Manages Department
• 1:N Employee Manages Department
• N:1 Employee Manages Department
• M:N Employee Manages Department
ERD Notation
Chen Notation
ERD Notation
ERD Notaion
ERD Notation
ERD Notation
Crow’s Foot Notation
Cardinality Notation
Binary Relationships
• 1 : M relationship
• Setiap entitas pada suatu
himpunan entitas dapat
berhubungan dengan banyak
entitas pada himpunan
entitas lain , dan tidak
sebaliknya dimana setiap
entitas pada himpunan
entitas lain berhubungan
dengan paling banyak satu
entitas pada himpunan
entitas tersebut.
• Modeling relasional yang
ideal
The 1: M relationship between PAINTER and PAINTING
• Menjadi hal yang umum
dalam setiap rancangan
database relatisonal
Binary
1 : 1 relationship
• Setiap entitas pada suatu himpunan entitas berhubungan
dengan paling banyak satu entitas pada himpunan entitas lain.
• Jarang terjadi dalam suatu rancangan database relasional
• Bisa mengindikasikan bahwa 2 entitas tersebut secara aktual
ada dalam tabel yang sama
Binary Relationships
Binary Relationships
M:N relationships
• Setiap entitas pada suatu himpunan entitas dapat berhubungan dengan
banyak entitas pada himpunan entitas lain dan juga sebaliknya.
• Mesti dihindari karena bisa menyebabkan redudansi data
• Bisa diimplementasikan dengan memecah relationship menjadi sekumpulan
1:M relationships
• Problem yang ditimbulkan M:N relationship bisa dihindari dengan membuat
suatu composite entity atau bridge entity
• Composite entity ini dipergunakan untuk menghubungkan entity-entity yang
semula membentuk M:N relationship
• Struktur composite entity mengandung keys: foreign keys-terdiri dari paling
sedikit primary key dari entity-entity yang dihubungkan
Binary Relationships
Binary Relationships
Creating ERD
1. Mengidenti kasi dan menetapkan seluruh himpunan entitas
yang akan terlibat
2. Menentukan atribut-atribut kunci dari masing-masing himpunan
entitas
3. Mengidenti kasi dan menetapkan seluruh himpunan relasi
diantara himpunan entitas yang ada beserta foreign key-nya
4. Menentukan derajat relasi (cardinality) untuk setiap himpunan
relasi
5. Melengkapi himpunan entitas dan himpunan relasi dengan
atribut deskriptif (yang bukan kunci)
fi
fi
Latihan ERD
1. Setiap divisi kerja pada sebuah perusahaan memiliki seorang
kepala divisi. Pegawai yang ditunjuk menjadi kepala pada suatu
divisi tidak boleh merangkap jabatan menjadi kepala divisi yang
lain.
2. Sebuah PTS menugaskan dosen-dosen tetapnya menjadi dosen
wali. Setiap dosen wali membina max. 20 orang mahasiswa.
3. Setiap dokter pada sebuah RS bertugas menangani banyak
pasien. Setiap pasien dapat ditangani oleh satu atau beberapa
orang dokter.
4. Setiap provinsi di Indonesia memiliki banyak kota yang berada
di wilayahnya.
Latihan ERD
5. Rajawali Airways melayani rute penerbangan di wilayah
Indonesia Timur. Setiap pilot di maskapai ini hanya
menerbangkan sebuah pesawat tertentu.
6. Untuk dapat meminjam koleksi perpustakaan, pengunjung
harus menjadi [Link] anggota boleh meminjam max.3
buah buku setiap kali peminjaman.
7. Setiap anggota direksi pada sebuah perusahaan memiliki
seorang [Link] pegawai sekretaris hanya bekerja untuk
satu orang anggota direksi.
8. Setiap transaksi belanja di sebuah mini market harus mendata
barang-barang yang dibeli, berikut kasir yang menanganinya.
Latihan ERD
9. Draw an ER diagram for the following “mini world”:
• Each supplier has a unique nama
• More than one supplier can be located in the same city
• Each part has a unique part number
• Each part has colour
• A supplier can supply more than one part
• A part can be supplied by more than one supplier
• add information about the quantity of each part
supplied