57
BASIS DATA (BS203) [email protected] fb: NDoro Edi MODEL RELASIONAL

RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Embed Size (px)

Citation preview

Page 1: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

BASIS DATA (BS203)

[email protected]

fb: NDoro Edi

MODEL RELASIONAL

Page 2: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Outline

• Pendahuluan

– Model Data Relational & Syarat

• Transformasi Model ER Model Relasi

– Himpunan Entitas, yg memiliki

• Atribut komposit

• Atibut bernilai banyak

– Himpunan Entitas Lemah

– Relasi Biner, Unary, N-Ary

– Implementasi Spesialisasi/Generalisasi

– Agregasi

– Integritas Basis Data

Page 3: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi

• Model Relasional adalah sebuah struktur yang paling banyak digunakan oleh sebagian DBMS.

• Oleh karena itu akan disajikan cara transformasi E-R Diagram ke dalam Model Basis Data Relasional.

Page 4: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh ER-D

4

Mahasiswa

NRP

Nama Alamat

Tgl_Lahir

Page 5: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

TABEL MAHASISWA

NRP Nama Alamat Tgl_Lahir

0472001 Ria Jl. Badak 2 11/09/85

0472002 Riny Jl. Sapi 3 12/01/85

0472003 Erica Jl. Macan 1 09/09/84

0472004 John Jl. Riau 3 01/03/85

0472005 Lucas Jl. Duku 4 04/03/85

0472006 Paul Jl. Badak 5 01/03/85

0472007 Philip Jl. Riau 30 01/03/85

0472008 Mary Jl. Riau 3 03/03/83

Page 6: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Model Basis Data Relasional

• Model basis data relasional mempresentasikan basis data sebagai sekumpulan tabel. Masing-masing tabel mempunyai nama yang unik.

• Baris data (Row/Record) pada tabel mempresentasikan sekumpulan nilai yang saling berhubungan.

• Setiap nilai dihubungkan kepada sebuah atribut.

Page 7: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Syarat

1. Setiap relasi mempunyai nama yang unik.

2. Tak ada tupel (baris) yang kembar.

3. Urutan tupel tidaklah penting (tupel-tupel dapat dipandang dalam sembarang urutan).

4. Setiap atribut (kolom) memiliki nama yang unik.

5. Letak atribut bebas (urutan atribut tidak penting).

6. Setiap atribut memiliki nilai tunggal dan jenisnya sama untuk semua tupel.

Page 8: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Himpunan Entitas

• Himpunan entitas kuat dengan atribut a1, a2, …, an diimplementasikan sebagai sebuah tabel dengan n kolom yang unik (satu kolom per atribut).

• Setiap baris pada tabel merepresentasikan satu entitas dari himpunan entitas.

• Kita dapat menambah, menghapus, dan mengubah baris pada tabel.

Page 9: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Himpunan Entitas dengan Atribut

Komposit

• Atribut Komposit diratakan dengan membuat kolom baru untuk setiap komponen dari atribut komposit.

Page 10: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh

Relation schema: Customer-schema = (customer-id, first-

name, middle-initial, last-name, street-number, street-name,

apartment-number,city,state,zip-code)

Integritas Referensial Customer = Relasi Customer

Page 11: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Entitas Customer

dengan atribut

komposit

Relasi CUSTOMER

Page 12: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Atribut Bernilai Banyak (Multi Valued Attribute)

• Atribut Bernilai Banyak (misal disebut M) dari himpunan entitas E direpresentasikan dengan tabel EM yang terpisah.

Tabel EM mempunyai atribut yang terdiri dari kunci primer E dan atribut M yang bernilai banyak.

Setiap nilai dari Atribut Bernilai Banyak menjadi baris yang berbeda pada tabel EM.

Page 13: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh

Tabel EM (Customer-PhoneNumber)

◦ Relation Schema: terdiri dari kunci primer E dan atribut M

Customer-Schema = (customer-id, date-of-birth)

Customer-PhoneNumber-Schema= (customer-id, phone-number)

M

E

Page 14: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Integritas Referensial

Customer

Customer-phone-number

Page 15: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Relasi Satu ke Banyak antara entitas awal dengan relasi baru

(a)

Atribut Bernilai Banyak menjadi relasi terpisah dengan kunci tamu

(b)

Page 16: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Latihan 3

DOSEN

NIK

Nama

Nama_d

Nama_b

Alamat

Gelar

Page 17: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Himpunan Entitas Lemah

Himpunan entitas lemah dengan atribut a1, a2, …, an dan himpunan entitas kuatnya dengan kunci primer b1, b2, …, bm direpresentasikan sebagai tabel dengan n+m kolom, satu untuk setiap {a1, a2, …, an} U {b1, b2, …, bm}. b1, b2, …, bm adalah kunci tamu dari yang menunjuk pada himpunan entitas kuat.

Pada penghapusan data, bila data pada himpunan entitas yang kuat dihapus, data dengan kunci primer tersebut juga harus dihapus dari himpunan entitas lemah.

Page 18: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Hasil Relasi

Foreign key

Primary key

loan Loan-payment payment

Loan-number amount

Payment-number

Payment-date

Payment-amount

Page 19: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan
Page 20: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Foreign key

Composite primary key

Page 21: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Latihan 5

Punya Hobbi

Nama

Mahasiswa

NRP

Alamat

Nama

Page 22: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Punya OrangTua

Pekerjaan

Mahasiswa

NRP

Alamat

Nama

Nama

Nama_d Nama_b

Alamat

Jalan Kota

Page 23: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Relasi Biner

• Terdiri dari

– Transformasi relasi 1 : 1 (1-1)

– Transformasi relasi 1 : N atau N : 1 (1-N/N-1)

– Transformasi relasi M : N (M-N)

Page 24: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Himpunan Relasi 1 : 1

• Untuk mentransformasikan relasi dengan Derajat Relasi 1-1 yang menghubungkan 2 buah himpunan entitas (S dan T), pilih salah satu relasi (katakan S) dan tambahkan dengan kunci primer T plus atribut dari himpunan relasi tersebut.

• Dalam hal memilih relasi, pilihlah yang jumlah row-nya lebih sedikit atau yang ukuran tabelnya diperkirakan lebih kecil.

Page 25: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Himpunan Relasi 1 : 1

nik nama_dos alamat_dos

Dosen

nama_dos alamat_dos

nik Mengepalai Jurusan

nama_jur kode_jur

kode_jur nama_jur

Tabel: Dosen Tabel: Jurusan

nik

Foreign key

Page 26: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Himpunan Relasi 1 : N atau N : 1

• Untuk mentransformasikan relasi dengan Derajat Relasi 1-N atau N-1 yang menghubungkan 2 buah himpunan entitas (S dan T), pilih relasi yang berderajat N (katakan S) dan tambahkan kunci primer T (yang berderajat 1) plus atribut dari himpunan relasi tersebut. Dengan kata lain, kunci primer dari relasi yang berderajat satu menjadi kunci tamu di relasi yang berderajat banyak.

Page 27: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Himpunan Relasi 1 : N atau N : 1

kode_kul nama_kul

Dosen

nama_dos alamat_dos

nik Mengajar Kuliah

kode_kul nama_kul

waktu

Tabel: Kuliah

nik waktu

Foreign key

Atribut

relasi

nik nama_dos alamat_dos

Tabel: Dosen

Page 28: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Himpunan Relasi M:N

Untuk mentransformasikan relasi dengan Derajat Relasi N-N yang menghubungkan 2 buah himpunan entitas (S dan T), tambahkan tabel khusus dengan kolom: kunci primer dari himpunan entitas S plus kunci primer dari himpunan entitas T plus atribut dari himpunan relasi tersebut.

Page 29: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Translasi Relasi M:N

nim kode_kul nilai

Mahasiswa

nim nama_mhs

alamat_mhs tgl_lahir

Kuliah

kode_kul nama_kul

Mempelajari

nilai

Foreign key

ke tabel Mahasiswa

Foreign key

ke tabel Kuliah

Primary key

Tabel khusus yang mewakili

Relasi Mempelajari:

Tabel Mempelajari/Tabel

Nilai Atribut relasi

Page 30: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

KUNCI TAMU (FOREIGN KEY)

• Kunci Tamu (kadang disebut kunci asing) adalah sembarang atribut yang menunjuk ke kunci primer pada tabel lain.

• Kunci tamu dapat menunjuk pada tabel yang sama (tabel sendiri) – tidak selalu harus menunjuk pada tabel yang lain.

Page 31: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Implementasi Relasi Tunggal (Unary Relation)

Satu ke Banyak: penggunaan field key dua kali tetapi untuk fungsi yang berbeda.

Banyak ke Banyak:

◦ pembentukan tabel baru yang merepresentasikan relasi tersebut.

◦ Tabel baru ini mendapatkan field dari semua atribut relasi (jika ada) yang ditambah dengan atribut key dari himpunan entitasnya.

Satu ke Satu: merupakan kasus khusus dari hubungan satu ke banyak.

Page 32: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh Unary 1:N

employee-id employee-name

Tabel : Employee

telepon-number employee-id-mngr

Page 33: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh Unary M : N

Page 34: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Hasil Unary M : N

• Tabel : Mahasiswa

• Tabel : Praktikum

NRP Nama TglLahir

NRP-Peserta

NRP-Asisten-Praktikum

Page 35: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh Unary 1:1

• Tabel : Orang

No-KTP Nama TglLhr No-KTP-Pasangan

Page 36: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Implementasi Relasi Multi Entitas (N-ary Relation)

Relasi Multi Entitas dengan atribut a1, a2, …, an yang menghubungkan himpunan entitas Ei’s (katakan ada m himpunan entitas): direpresentasikan dengan sebuah tabel yang mempunyai n+m kolom, satu untuk setiap {a1, a2, …, an} U {kunci-primer(E1), kunci-primer(E2), …, kunci-primer(Em)}

Page 37: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh Ternary

jabatan

cabang pegawai

nik nama

kota alamat

nm-cabang kota

kd-cab

id-jab

bekerja

nm-jab

Page 38: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Hasil Relasi Ternary

• Skema Relasi (Relation Schema)

– Pegawai (NIK, nama, alamat, kota)

– Jabatan (id-jab, nm-jab)

– Bekerja (NIK, id-jab, kd-cab)

– Cabang (kd-cab, nm-cabang, kota)

Page 39: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Integritas Referensial (Ternary)

Cabang

Page 40: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Implementasi Spesialiasi/Generalisasi

• Cara 1:

– Buat tabel untuk entitas superior (higher-level entity/lebih tinggi)

– Buat sebuah tabel untuk entitas yang ada di bawahnya (sub entitas/ lower-level entity), termasuk dari primary key superior entitas + atribut sub entitas.

• Kerugian cara 1:

– Untuk mendapatkan informasi mengenai sub entitas harus mengakses 2 buah tabel

Page 41: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Implementasi Spesialiasi/Generalisasi

• Cara 2: – Buat tabel untuk setiap himpunan entitas dengan

semua atribut lokal (di sub entitas) + atribut yg diwariskan.

– Kalau cara ini digunakan untuk generalisasi yg ‘overlapping’, maka beberapa nilai seperti alamat dan kota akan disimpan 2 kali dengan sia-sia.

Page 42: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Implementasi Spesialiasi/Generalisasi

• Cara 3: – Kalau generalisasinya disjoint dan total, tidak perlu

membuat tabel untuk himpunan entitas superior.

– Kalau generalisasinya ‘partial’, entitas yang tidak termasuk sub entitas manapun tidak dapat direpresentasikan.

Page 43: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Guidance

Total Overlap & Partial Overlap cara 1 lebih baik (tidak akan ada pengulangan data terlalu banyak pada tabel sub-entitas)

Partial + disjoint cara 1 atau cara 2 tetapi tabel superior harus ada agar entitas yang tidak termasuk pada sub entitas manapun dapat tetap direpresentasikan

Total + disjoint cara 3

tanpa tabel superior karena setiap entitas pasti menjadi anggota dari salah satu sub entitas

Page 44: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh Total + Disjoint

ISA

Page 45: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Transformasi Total + Disjoint

• Skema Relasi • Cara 1

– Karyawan (NIK, Nama, Alamat, Tgl-Gajian, Tipe Karyawan) – Karyawan Tetap (NIK, Gaji-Bulanan) – Karyawan Harian (NIK, Honor-per-jam)

• Cara 2 – Karyawan (NIK, Nama, Alamat, Tgl-Gajian, Tipe Karyawan) – Karyawan Tetap (NIK, Nama, Alamat, Tgl-Gajian, Tipe

Karyawan, Gaji-Bulanan) – Karyawan Harian (NIK, Nama, Alamat, Tgl-Gajian, Tipe

Karyawan, Honor-per-jam)

• Cara 3 – Karyawan Tetap (NIK, Nama, Alamat, Tgl-Gajian, Tipe

Karyawan, Gaji-Bulanan) – Karyawan Harian (NIK, Nama, Alamat, Tgl-Gajian, Tipe

Karyawan, Honor-per-jam)

Page 46: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Latihan 1

Employee

birthdate

NoKTP

Address

JobType

Name

Secretary Technician Engineer

TypingSpeed TGrade EngType

ISA disjoint

Page 47: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Latihan 2

Major-Dept

Person

Name Address

NoKTP Birth-date

Employee

Student Alumnus

Salary

Degrees

Degree

Major Year

ISA

Page 48: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Implementasi Agregasi

• Untuk merepresentasikan agregasi, buat tabel baru yang memiliki:

Kunci primer dari relasi agregasi

Kunci primer dari entitas-entitas yang dihubungi oleh relasi agregasi

Atribut dari relasi agregasi

Page 49: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh Agregasi

Page 50: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Skema Relasi Agregasi

• Mahasiswa (NRP, NamaMhs)

• Kuliah (KodeMK, NamaMK)

• Mempelajari (NRP, KodeMK, Waktu)

• Praktikum (kode_pra, nama_pra, jumlah_jam)

• Mengikuti (NRP, KodeMK, kode_pra, nilai)

50

Page 51: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan
Page 52: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Integritas Basis Data

• Integritas Keunikan Data (Key Constraints): setiap baris pada tabel harus unik. Tidak boleh ada dua baris yang sama.

• Integritas Domain Data (Domain Constraints): nilai untuk setiap atribut harus benar berdasarkan domain dari atribut tersebut.

o Contoh: umur integer; 4 boleh dan 4.3 tidak boleh!

Page 53: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Integritas Basis Data

• Integritas Referensial (Referential Integrity Constraints): bila salah satu baris pada tabel menunjuk pada baris di tabel lain (kunci tamu), baris yang ditunjuk tersebut harus ada. Dengan kata lain, nilai dari kunci tamu harus ada sebagai kunci primer di tabel yang ditunjuk.

• Integritas Entitas (Entity Integrity Constraints): kunci primer tidak boleh bernilai NULL.

Page 54: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Integritas Referensial

Ada 4 hal yang dapat dilakukan untuk

menjaga integritas referensial:

1. Tidak memperbolehkan

menghapus/mengubah data di tabel

utama jika ada tabel lain yang menunjuk

pada data tersebut melalui kunci tamu.

2. Jika menghapus data di tabel utama,

data di tabel yang menunjuk pada tabel

utama tersebut juga turut dihapus.

Page 55: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Integritas Referensial (2)

3. Jika menghapus data pada tabel utama, kita dapat membuat nilai dari kunci tamu pada tabel yang menunjuk pada tabel utama NULL. Tetapi hal ini tidak diperbolehkan untuk himpunan entitas lemah.

4. Jika data ditambahkan pada tabel yang menunjuk pada tabel utama tetapi data tersebut tidak ada di tabel utama, penambahan tidak diperbolehkan.

Page 56: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Contoh Integritas Referensial

Page 57: RELATIONAL DATA MODEL - si.itmaranatha.orgsi.itmaranatha.org/v2/attachments/article/107/04. Model Relasional... · •Transformasi Model ER Model Relasi ... •Oleh karena itu akan

Rangkuman Kuliah Model Relasional

• Pendahuluan

– Model Data Relational & Syarat

• Transformasi Model ER Model Relasi

– Himpunan Entitas, yg memiliki

• Atribut komposit

• Atibut bernilai banyak

– Himpunan Entitas Lemah

– Relasi Biner, Unary, N-Ary

– Implementasi Spesialisasi/Generalisasi

– Agregasi

– Integritas Basis Data