Professional Documents
Culture Documents
Topics discussed
4
3
5
6
2
7
pri.and.ari@2010
Topics discussed
pri.and.ari@2010
Tujuan utama adalah menyusun deskripsi tabel-tabel kemudian memeriksa normalisasi tabel-tabel tersebut.
pri.and.ari@2010
Studi Kasus
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.1 Tabel-Tabel dari Entitas
Untuk setiap entitas yang telah diidentifikasi dalam model ER, susunlah/dokumentasikan tabel-tabel. Untuk atribut komposit, simpanlah atribut sederhananya (penyusunnya). Misal, alamat disimpan dalam bentuk : namajalan, kota, negara bagian dan kodepos. Bila mungkin, identifikasi field yang dapat menjadi primary key. Tabel berikut menyajikan struktur awal tabel-tabel dari entitas yang telah diidentifikasi sebelumnya.
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
Relasi antara satu entitas dengan entitas lainnya direpresentasikan melalui mekanisme primary key/foreign key. Identifikasi terlebih dahulu entitas parent dan child. Identifikasi tersebut perlu mempertimbangkan jenis relasi antar entitas, yakni relasi:
a. b. c. d. e. f. g. One-to-many (1:*) binary relationship One-to-many (1:*) recursive relationship One-to-one (1:1) binary relationship One-to-one (1:1) recursive relationship Many-to-many (*:*) binary relationship Complex relationship Multi-valued attributes.
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
a. One-to-many (1:*) binary relationship
Copy primary key dari tabel parent ke tabel child sebagai foreign key.
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
b. One-to-many (1:*) recursive relationship
Buatlah sebuah field baru yang menyimpan primary key dari parent ke child sebagai foreign key.
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
c. One-to-one (1:1) binary relationship
Transformasi relasi ini lebih komplek dari sebelumnya karena perlu mempertimbangkan cardinalitas relasi. Ada 3 bentuk cardinalitas yang mungkin terjadi pada relasi 1:1 tersebut, yakni:
1) Relasi bersifat mandatory pada kedua entitas relasi 1:1 2) Relasi bersifat mandatory pada salah satu entitas relasi 1:1 3) Relasi bersifat opsional pada kedua sisi entitas relasi 1:1
10
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
c. One-to-one (1:1) binary relationship
11
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
c. One-to-one (1:1) binary relationship
2). Relasi bersifat mandatory pada salah satu entitas relasi 1:1
Identifikasi entitas parent dan child, yakni entitas yang memiliki cardinalitas opsional dijadikan sebagai tabel parent. Copy primary key dari tabel parent ke tabel child sebagai foreign key.
12
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
c. One-to-one (1:1) binary relationship
2). Relasi bersifat mandatory pada salah satu entitas relasi 1:1
.
13
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
c. One-to-one (1:1) binary relationship
14
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
d. One-to-one (1:1) recursive relationship
Sama dengan one-to-one (1:1) binary relationship. Apabila cardinality berbentuk mandatory pada kedua entitas, maka representasikan relasi sebagai sebuah tabel baru dengan mengkopi primary key dari kedua tabel. Apabila cardinality berbentuk mandatory pada salah satu entitas, maka:
Membuat sebuah field baru di tabel child dengan mengkopi primary key dari tabel parent, atau Membuat sebuah tabel baru untuk menyajikan relasi tersebut, dimana tabel baru itu memiliki dua buah kolom yang keduanya berisi primary key dari kedua tabel asal
15
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
e. Many-to-many (*:*) binary relationship
Untuk setiap relasi biner many-tomany (*:*) buatlah sebuah tabel baru untuk menyajikan relasi kedua entitas. Tabel baru itu dikenal sebagai tabel transaksional. Copy primary key dari kedua entitas ke dalam tabel baru yang bertindak sebagai foreign key.
16
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
f. Complex relationship
Buatlah sebuah tabel baru untuk menyajikan relasi antar entitas. Copy primary key dari entitas-entitas ke dalam tabel baru yang bertindak sebagai foreign key.
17
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
f. Complex relationship
Buatlah sebuah tabel baru untuk menyajikan relasi antar entitas. Copy primary key dari entitas-entitas ke dalam tabel baru yang bertindak sebagai foreign key.
18
pri.and.ari@2010
1. Menyusun Tabel-Tabel
1.2 Tabel-Tabel dari Relasi
g. Multi-valued Atribute
Aturannya sama dengan relasi 1:*. Pisahkan atribut bernilai jamak (multi atribut) tersebut ke dalam sebuah tabel baru. Copy primary key dari entitas parent ke dalam tabel baru yang dibentuk.
19
pri.and.ari@2010
1. Menyusun Tabel-Tabel
Hasil pembuatan tabel disajikan sebagai berikut.
20
pri.and.ari@2010
21
pri.and.ari@2010
22
pri.and.ari@2010
23
pri.and.ari@2010
24
pri.and.ari@2010
25
pri.and.ari@2010
26
pri.and.ari@2010
c.
Integritas entitas
d. Cardinalitas
27
e. Integritas referensial
Integritas referensial adalah jika suatu foreign key berisi nilai, maka nilai tersebut harus benar-benar merujuk pada record di tabel induk. Dua hal yang harus dicermati:
1. 2. Apakah null diperkenankan untuk suatu foreign key ?
Sample: noCabang bolehkan bernilai null pada tabel Staff ?
Ada sejumlah aturan yang dapat dipakai dalam integritas referensial (on Update / Delete ) :
1. 2. 3. 4. 5. NO ACTION CASCADE SET NULL SET DEFAULT NO CHECK
pri.and.ari@2010
28
3.
4. 5.
29
pri.and.ari@2010
30
pri.and.ari@2010
31
pri.and.ari@2010
Diskusi
32
32
pri.and.ari@2010
Tugas Mandiri
Baca buku [1] chapter 11
33
33
pri.and.ari@2010