Title: ENTITY-RELATIONSHIP MODEL
1ENTITY-RELATIONSHIP MODEL
- Suheri S.T
- chinsuvent_at_yahoo.com
2ENTITY-RELATIONSHIP MODEL
- E-R Models are Conceptual Models of the database.
They can not be directly implemented in a
database. - Desainnya mendekati pengamatan/penerimaan user
terhadap data. - Didasarkan atas OBJECT riil dunia nyata dan
hubungan antar object-object tersebut. - Entity-Relationship model terdiri dari Entity,
Relationship, dan Attribute.
3ENTITY
- Entity adalah obyek yang dapat dibedakan dalam
dunia nyata. - Entity sets adalah kumpulan dari entity yang
sejenis. - Entity sets dapat berupa
- Obyek secara fisik Rumah, Kendaraan, Peralatan,
Mahasiswa. - Oyek secara konsep Pekerjaan, Perusahaan,
Rencana, Matakuliah. - Simbol persegi panjang
nama_entity
4ATRIBUTE
- Atribut adalah karakteristik dari entity atau
relationship yang menyediakan detail tentang
entity atau relationship tersebut sehingga dapat
dibedakan. Nilainya jarang berubah. - Atribut dari entity mahasiswa
- nim
- nama
- jurusan
- alamat
5VALUE SET (Domain) dari Atribut
- Kumpulan harga/nilai yang dapat dimiliki oleh
atribut dari suatu entitas. - Definisi domain dari suatu atribut akan mencakup
tipe data, panjang, format, nilai yang
memingkinkan, keunikan dan kemungkinan data null.
- Contoh
- Atribut nama pada entitas mahasiswa domainnya
nama orang - Atribut nama pada entitas barang domainnya nama
barang
6Macam-Macam Atribut
- Atribut sederhana/atomik atribut yang tidak
dapat dibagi-bagi menjadi atribut yang lebih
mendasar. - Contoh atribut harga dari entity barang.
- Atribut komposit atribut yang terdiri dari
beberapa atribut yang lebih mendasar. - Contoh Entity mahasiswa memiliki atribut nama
yang terdiri dari nama depan (first name), nama
tengah (middle name) dan nama belakang (last
name).
7Macam-Macam Atribut (lanj)
- Atribut Berharga Tunggal (Single-valued
Attribute) atribut yang hanya mempunyai satu
harga untuk suatu entitas tertentu. - Contoh atribut umur.
- Atribut Berharga Banyak (Multi-valued Attribute)
atribut yang dapat terdiri dari sekumpulan
harga untuk suatu entitas tertentu. - Contoh atribut hobi.
- Atribut Derivatif suatu atribut yang dihasilkan
dari atribut lain. - Contoh atribut umur yang dapat dihasilkan dari
atribut tgl_lahir.
8Atribut Kunci
- identifier unik dari suatu entitas karena nilai
dari atribut kunci ini akan berbeda untuk
masing-masing entitas biasa disebut primary
key. - dapat terdiri dari atribut sederhana/ komposit
- Contoh
- NomorMobil dari entitas MOBIL ? komposit
- kodemk dari entitas matakuliah ? sederhana
9Atribut Kunci (lanj)
- Foreign Key (kunci tamu) suatu atribut dalam
suatu entity yang menunjuk ke atribut primary key
dari entity lain. - Alternate Key (kunci alternatif) atribut kunci
yang tidak ada di dunia nyata, tetapi diadakan
dan dijadikan primary key karena tidak ada satu
pun atribut dalam sebuah entity yang dapat
mewakili entity tersebut.
10Simbol-Simbol Atribut (oval)
nama_atribut
nama_atribut
nama_atribut
nama_atribut_komposit
nama_atribut_kunci
nama_atribut
nama_atribut_derivatif
nama_entity
11RELATIONSHIP
- Relationship adalah hubungan yang terjadi antara
satu atau lebih entity. - Relationship sets adalah kumpulan dari
relationship yang sejenis. - Contoh
- an employee work_on a company.
- relationship work_on.
- Simbol wajik
12Derajat dari Relationship
- Menjelaskan jumlah entity yang berpartisipasi
dalam suatu relationship - Unary Degree (Derajat Satu) sebuah entity
berelasi dengan dirinya.
13Derajat dari Relationship (lanj)
- Binary Degree (Derajat Dua) terdapat dua entity
yang saling berhubungan.
14Derajat dari Relationship (lanj)
- Ternary Degree (Derajat Tiga) terdapat tiga
entity yang saling berhubungan.
15Cardinality Ratio
- Menjelaskan jumlah keterhubungan satu entity
dengan entity yang lainnya. - (1 1) satu entitas pada tipe entitas A
berhubungan dengan paling banyak satu entitas
pada tipe entitas B dan juga sebaliknya. Contoh
seorang manager hanya memimpin satu departemen
dan begitu sebaliknya.
16Cardinality Ratio (lanj)
- (1 N / N 1) suatu entitas di A dihubungkan
dengan sejumlah entitas di B. Contoh banyak
karyawan berkerja untuk satu depertement atau
satu departement memiliki banyak karyawan yang
bekerja untuknya.
17Cardinality Ratio (lanj)
- (M N) setiap entitas A dapat berhubungan
dengan banyak entitas B dan sebaliknya setiap
entitas B juga dapat berhubungan dengan banyak
entitas A. Contoh satu proyek mempunyai banyak
karyawan, satu karyawan boleh bekerja di beberapa
proyek.
18Participation Constraint
- Menjelaskan batasan keikut-sertaan dari suatu
entity terhadap hubungannya dengan entity yang
lainnya. - Total Participation menyatakan instance dari
suatu entity harus berhubungan dengan instance
dari entity lainnya. - Partial Participation menyatakan setiap
instance dari suatu entity tidak harus
berhubungan dengan instance dari entity lainnya. - Contoh setiap departemen harus dipimpin oleh
seorang manager/karyawan (total participation)
dan tidak semua karyawan yang memimpin suatu
departemen (partial participation).
19Weak Entity (Entitas Lemah)
- Weak entity adalah suatu entity yang mana
keberadaannya tergantung dari keberadaan entity
lain. - Entity yang merupakan induknya disebut
Identifying Owner dan relationshipnya disebut
Identifying Relationship. - Weak entity selalu mempunyai total participation
constraint terhadap Identifying Owner. Contoh
entity tanggungan keberadaannya bergantung pada
karyawan.
20Weak Entity (lanj)
21Entity-Relationship Diagram (ERD)
- Merupakan diagram yang menggambarkan hubungan
(relationship) antar entitas (entity).
22Symbol E-R Diagram
23Tahap Pembuatan Entity Relationship Diagram
- Mengidentifikasikan dan menetapkan seluruh
himpunan entity yang akan terlibat. - Menentukan atribut-atribut dari setiap entity.
- Menentukan atribut primary key dari setiap
entity. - Menentukan relationship antar entity.
- Menentukan atribut-atribut dari setiap
relationship (jika ada). - Menentukan Cardinality Rasio.
- Menentukan Participation Constraint.
24Kamus Data
- Menjelaskan nama entity set beserta
atribut-atributnya. - Contoh untuk entity set mahasiswa dengan
atribut nim, nama dan alamat. maka kamus datanya
berupa - mahasiswa nim, nama, alamat.
- Ket
- mahasiswa adalah nama entity set.
- nim, nama, alamat adalah nama atribut.
25Contoh ERD One to One
26Contoh ERD One to Many
27Contoh ERD Many to Many
28Transformasi E-R Diagram ke Basis Data Relational
- Tahap-Tahap Transformasi
- Entity-Relationship Diagram menjadi basis data.
- Entity menjadi tabel dan atribut menjadi
kolom/field dari tabel. - Entitas lemah ? key dari owner (entitas kuat)
ke tabel entitas lemah. - Setiap tipe entity dibuat suatu tabel yang memuat
semua atribut simple, sedangkan untuk atribut
komposit hanya dimuat komponen-komponennya saja.
Contoh
Tabel Customer
id name street city state zip_code
29Transformasi E-R Diagram ke Basis Data
Relational (lanj)
- Setiap tabel yang mempunyai atribut multivalue,
buatlah tabel baru dimana primary key-nya
merupakan gabungan dari primary key dari tabel
tersebut dengan atribut multivalue.
Tabel Proyek
no_proyek nama_proyek
Tabel Lokasi_Proyek
no_proyek lokasi
30Transformasi E-R Diagram ke Basis Data
Relational (lanj)
- Setiap unary relationship 1N, selain membuat
tabel baru berdasarkan entity, buat juga tabel
baru berdasarkan relationship-nya dengan atribut
kunci tamu (foreign key) berdasarkan atribut
kunci dari entity tersebut dan atribut kunci
alternatif sebagai primary key-nya.
Tabel Employee
employee_id employee_name
Tabel Supervision
supervisor_id employee_id
31Transformasi E-R Diagram ke Basis Data
Relational (lanj)
- Untuk CR 11 dengan atau tanpa total
participation maka akan dibuat tabel baru
berdasarkan relationship, dimana kolom-kolomnya
terdiri dari alternate key, dan primary key dari
masing-masing entity.
Tabel Dosen
nip Nama_dos
Tabel kaprodi
periode kode_jur nip
Tabel Jurusan
kode_jur nama_jur
32Transformasi E-R Diagram ke Basis Data
Relational (lanj)
- Untuk CR 1N dengan atau tanpa total
participation maka primary key dari sisi 1 masuk
ke sisi N.
Tabel Dosen
nip nama_dos
Tabel Mahasiswa
nim nama_mhs nip
33Transformasi E-R Diagram ke Basis Data
Relational (lanj)
- Untuk CR MN ? dibuat tabel tersendiri
berdasarkan relationshipnya dengan kolom-kolomnya
terdiri dari alternate key dan primary key dari
masing-masing entity.
Tabel Mahasiswa
nim nama_mhs
Tabel KRS
semester
semester nim kode_mk
Tabel Matakuliah
kode_mk nama_mk
34Studi Kasus Rental VCD FILM
- Spesifikasi Database
- Data dari film berupa judul, jumlah kepingan,
jumlah film. - Film yang disewakan dikelompokkan ke dalam
kelompok film yang terdiri dari jenis film dengan
masing-masing jenis memiliki harga sewa yang
berbeda, artinya jenis film menentukan harga
sewanya. - Data customer yang menyewa berupa no identitas,
jenis identitas, nama dan alamat. - Setiap customer dapat menyewa lebih dari satu
film. - Satu judul film dapat disewa oleh beberapa
customer. - lama sewa sesuai dengan jumlah film, terhitung
dari tgl menyewa. - Setiap keterlambatan pengembalian akan dikenakan
denda per hari dan per film. nilai dari denda
sudah ditetapkan (konstan).
35Tahap Pembuatan Entity Relationship Diagram
- Mengidentifikasikan entity-entity yang ada.
- entity-entity KelompokFilm, Film, Customer.
- Menentukan atribut-atribut dari setiap entity.
- Menentukan primary key dari setiap entity.
Entity Atribut
Film judul, jml_keping, jml_film
KelompokFilm jenis, harga_sewa
Customer no_identitas, jenis_identitas, nama, alamat
Entity Atribut
Film kode_film, judul, jml_keping, jml_film
KelompokFilm jenis, harga_sewa
Customer no_identitas, jenis_identitas, nama, alamat
36Tahap Pembuatan Entity Relationship Diagram (lanj)
- Menentukan relationship antar entity.
- Menentukan atribut-atribut dari setiap
relationship (jika ada).
Entity Relationship Entity
Film Dikelompokkan KelompokFilm
Customer Menyewa Film
Relationship Atribut
dikelompokkan -
Menyewa tgl_sewa, total_film, tgl_kembali, total_harga, denda
37Tahap Pembuatan Entity Relationship Diagram (lanj)
- Menentukan Cardinality Rasio.
- Menentukan participation constraint.
- Setiap film harus merupakan anggota dari suatu
jenis film, sehingga film memiliki total
participation terhadap relationshipnya dengan
entity kelompok film. - Setip customer tidak harus selalu menyewa film
dan setiap film tidak harus disewa oleh customer.
Sehingga entity-entity ini memiliki partial
participation relationship antar keduanya.
Entity Relationship Entity Cardinality Rasio
Film dikelompokkan KelompokFilm N 1
Customer Menyewa Film N M
38Entity Relationship Diagram Rental VCD FILM