You are on page 1of 38

ENTITY-RELATIONSHIP MODEL

ENTITY-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.
ENTITY
 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
ATRIBUTE
 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
VALUE 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
Macam-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).
Macam-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.
Atribut 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
Atribut 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.
Simbol-Simbol Atribut
(oval)
nama_atribut
nama_atribut nama_atribut

nama_atribut_kunci nama_atribut_komposit

nama_atribut
bernilai ganda
nama_atribut nama_atribut_derivatif

nama_entity
RELATIONSHIP

 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

employee work_on company


Derajat dari Relationship
 Menjelaskan jumlah entity yang berpartisipasi
dalam suatu relationship
 Unary Degree (Derajat Satu) : sebuah entity
berelasi dengan dirinya.

employee

supervisor supervise

supervison
Derajat dari Relationship (lanj)

 Binary Degree (Derajat Dua) :


terdapat dua entity yang saling
berhubungan.

employee work_on company


Derajat dari Relationship (lanj)

 Ternary Degree (Derajat Tiga) : terdapat tiga entity yang


saling berhubungan.

title level

job
employee_name
Brunch_city
employee_id brunch_name

employee work_on brunch


Cardinality 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.
manager manages departement

M1 R1 D1
M2 R2 D2
M3 R3 D3

1 1
manager manages departement
Cardinality 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.
employee works_for departement
E1 R1
E2 R2
D1
E3 R3
D2
E4 R4
D3
E5 R5
E6 R6

N 1
employee works_for departement
Cardinality 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.
employee works_on project
R1
E1 R2
P1
E2 R3
P2
E3 R4
P3
E4 R5
R6

M N
employee works_on project
Participation 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).
1 1
employee manages departement
Weak 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.
Weak Entity (lanj)

nip ………… nama …………

karyawan memiliki tanggungan


Entity-Relationship
Diagram (ERD)
 Merupakan diagram yang
menggambarkan hubungan
(relationship) antar entitas (entity).
Symbol E-R Diagram
Symbol Keterangan Symbol Keterangan

= Entity

= Atribut Komposit
= Weak Entity

= Relationship = Atribut Derivatif

= Identifying Relationship = Total Participation Of E2 In R


E1 R E2

= Atribut
1 N
E1 R E2 = Cardinality Ratio 1:N For E1:E2 In R

______ = Atribut Kunci

= Atribut Multivalue
Tahap Pembuatan Entity
Relationship Diagram
1. Mengidentifikasikan dan menetapkan seluruh
himpunan entity yang akan terlibat.
2. Menentukan atribut-atribut dari setiap entity.
3. Menentukan atribut primary key dari setiap
entity.
4. Menentukan relationship antar entity.
5. Menentukan atribut-atribut dari setiap
relationship (jika ada).
6. Menentukan Cardinality Rasio.
7. Menentukan Participation Constraint.
Kamus 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.
Contoh : ERD One to One

nip nama_dosen kode_jur nama_jur

1 1
Dosen Mengepalai Jurusan
Contoh : ERD One to Many

nip nama_dosen kode_mk nama_mk

1 N
Dosen Mengajar Matakuliah
Contoh : ERD Many to Many

nim nama_mhs kode_mk nama_mk

M N
Mahasiswa mengambil Matakuliah
Transformasi E-R Diagram ke
Basis Data Relational
Tahap-Tahap Transformasi :
1. Entity-Relationship Diagram menjadi basis data.
2. Entity menjadi tabel dan atribut menjadi kolom/field dari tabel.
3. Entitas lemah  key dari “owner” (entitas kuat) ke tabel entitas lemah.
4. Setiap tipe entity dibuat suatu tabel yang memuat semua atribut simple,
sedangkan untuk atribut komposit hanya dimuat komponen-komponennya
saja. Contoh :
city state

name street zip_code

id
address
customer

Tabel Customer
id name street city state zip_code
Transformasi E-R Diagram ke
Basis Data Relational (lanj)

5. 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
nama_proyek
no_proyek nama_proyek
no_proyek lokasi
i

Tabel Lokasi_Proyek
proyek no_proyek lokasi
Transformasi E-R Diagram ke
Basis Data Relational (lanj)

6. Setiap unary relationship 1:N, 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
employee_name
employee_id N
Tabel Supervision
employee supervision supervisor_id employee_id

1
Transformasi E-R Diagram ke
Basis Data Relational (lanj)
7. Untuk CR 1:1 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
nip Nama_dos

Dosen
periode 1
Tabel kaprodi

mengepalai periode kode_jur nip

1
Tabel Jurusan
Jurusan
kode_jur nama_jur
kode_jur nama_jur
Transformasi E-R Diagram ke
Basis Data Relational (lanj)
8. Untuk CR 1:N dengan atau tanpa total participation maka
primary key dari sisi 1 masuk ke sisi N.
nip nama_dos Tabel Dosen
nip nama_dos

Dosen
1

perwalian

N Tabel Mahasiswa

mahasiswa nim nama_mhs nip

nim nama_mhs
Transformasi E-R Diagram ke
Basis Data Relational (lanj)
9. Untuk CR M:N  dibuat tabel tersendiri berdasarkan
relationshipnya dengan kolom-kolomnya terdiri dari alternate
key dan primary key dari masing-masing entity.
nim nama_mhs Tabel Mahasiswa
nim nama_mhs

mahasiswa
N Tabel KRS
semester
semester nim kode_mk
mengambil

M
Tabel Matakuliah
matakuliah
kode_mk nama_mk
kode_mk nama_mk
Studi 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).
Tahap Pembuatan Entity
Relationship Diagram
1. Mengidentifikasikan entity-entity yang ada.
entity-entity : KelompokFilm, Film, Customer.
2. Menentukan atribut-atribut dari setiap entity.
Entity Atribut
Film judul, jml_keping, jml_film
KelompokFilm jenis, harga_sewa
Customer no_identitas, jenis_identitas, nama,
alamat
3. Menentukan primary key dari setiap entity.
Entity Atribut
Film kode_film, judul, jml_keping, jml_film
KelompokFilm jenis, harga_sewa
Customer no_identitas, jenis_identitas, nama, alamat
Tahap Pembuatan Entity
Relationship Diagram (lanj)
4. Menentukan relationship antar entity.
Entity Relationship Entity
Film Dikelompokkan KelompokFilm
Customer Menyewa Film

5. Menentukan atribut-atribut dari setiap relationship (jika ada).


Relationship Atribut
dikelompokkan -
Menyewa tgl_sewa, total_film, tgl_kembali,
total_harga, denda
Tahap Pembuatan Entity
Relationship Diagram (lanj)
6. Menentukan Cardinality Rasio.

Entity Relationship Entity Cardinality Rasio


Film dikelompokkan KelompokFilm N:1
Customer Menyewa Film N:M

7. 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 Diagram
Rental VCD FILM
judul

jenis harga_sewa kode_film jml_keping


dikelompokkan

kelompokfilm 1 N Film jml_film


N
jenis_identitas
tgl_sewa total_film
no_identitas

M total_harga
Customer menyewa

nama alamat denda


tgl_kembali

You might also like