Anda di halaman 1dari 45

1

Model Basis Data


Relasional
ISI2J4 - Sistem Basis Data

Program Studi S1 Sistem Informasi


FAKULTAS REKAYASA INDUSTRI
2

RELATIONAL MODEL

• Merepresentasikan database sebagai kumpulan relasi/tabel


• Diperkenalkan oleh Ted Codd pada tahun 1970 melalui IBM Research
• Menggunakan konsep mathematical relation
• Dipelopori oleh hierarchical and network models
• Diimplementasikan oleh banyak sistem database komersial
• Popular Relational DBMS: Oracle, DB2, MySQL, PostgreSQL
3

Perbedaan Istilah

ER Model Relational Model Database Traditional


Programmer
Entity Relation Table File
Entity Instance Tuple Row Record
Attribute Attribute  Column
  Field
Identifier Key Key Key (link)
4

KONSEP RELATIONAL MODEL

1. Relasi

2. Atribut

3. Tuple

4. Domain

5. Derajat

6. Cardinalitas ( cardinality)
5

Relasi, Atribut, dan Tupel

• Relasi merupakan entity pada E-R yang direpresentasikan dalam bentuk


tabel

• Tabel memiliki kolom dan baris

• Judul kolom merepresentasikan atribut dari entity

• Data setiap baris pada tabel dinamakan tupel


6

Relasi, Atribut, dan Tupel


7

Karakteristik dari relasi atribut dan tupel

• Tiap baris berisi data tentang sebuah entity


• Kolom-kolom berisi data tentang attribute dari suatu entity
• Satu sel pada tabel berisi satu data tunggal
• Seluruh entry pada satu kolom memiliki domain yang sama
• Tiap kolom memiliki nama yang unik
• Urutan kolom tidak penting
• Urutan baris tidak penting
• Tidak ada 2 baris yang identik
8

Relasi, Atribut, dan Tupel


9

Domain

• Suatu set data yang menggambarkan batas atau jumlah nilai dari suatu atribut

• Domain juga merupakan tipe data atau format yang didefinisikan untuk suatu attribute

• Contoh : NIM : 10 digit angka, range 1202190001 – 1202190500, int

Domain nama : kumpulan karakter string

Domain tanggal lahir : date, format DD-dec-YYYY, range 01-01-1961 to 31-12-2004

Domain gaji : int 0 - …

Domain jadwal shift : String, pagi siang malam , senin - minggu


10

Degree dan cardinality

• Degree : Jumlah atribute atau kolom dalam sebuah tabel.

• Cardinality: Jumlah tuple atau baris dalam sebuah tabel.


11

Relational Keys

Super Key
Candidate Key
Primary Key
Alternate Key
Surrogate Key
Foreign Key
12

Super key

adalah sebuah atau sekumpulan atribut yang secara unik mengidentifikasi


sebuah tupel dalam tabel relasi.

Student ID Name Telephone City Age


5109100150 Dika 087712343434 Jakarta 19
5109100010 Santika 082223235456 Surabaya 20
5109100165 Muhammad 087834332123 Jakarta 21
5109100100 Virky 085764323232 Solo 20
5109100050 Muhammad 089834545563 Jakarta 20

Mana super key nya?


13

Candidate Key

Minimal kumpulan atribut yang dapat mengidentifikasi sebuah tupel

Student ID Name Telephone City Age


5109100150 Dika 087712343434 Jakarta 19
5109100010 Santika 082223235456 Surabaya 20
5109100165 Muhammad 087834332123 Yogyakarta 21
5109100100 Virky 085764323232 Solo 20
5109100050 Muhammad 089834545563 Jakarta 20

Mana candidate key nya?


14

Primary Key

adalah candidate key yang dipilih sebagai pengidentifikasi unik


untuk sebuah tabel relasi.

- Tidak boleh kosong


- Tidak boleh berulang
15

Alternate Key

adalah candidate key yang tidak dipilih sebagai primary key.


Berdasarkan contoh candidate key sebelumnya, alternate key
adalah .....
16

Surrogate key

adalah sebuah primary key yang berupa integer yang tidak punya
hubungan atau makna dengan entitynya (bisa berupa auto
increment)
17

Foreign Key

Sebagai ID pengubung, yang merupakan Primary Key di tabel lain.

Student ID Kode MK Nilai


5109100150 ISYS1001 A
5109100150 ISYS1002 B
5109100165 ISYS1001 A
5109100100 ISYS1001 B
5109100050 ISYS1002 C

Mahasiswa
Student ID Nama

Mata kuliah
Kode MK Nama MK
18

Relational Integrity Rules


19

Integrity Rules
Sekelompok aturan dalam RDBMS yang harus dipatuhi dalam
pembuatan database agar database tersebut dapat bermanfaat
sebagaimana mestinya.
20

NULL

adalah nilai sebuah atribut yang tidak diketahui atau tidak ada pada
sebuah tupel dalam tabel relasi.

• Merepresentasikan nilai untuk atribut yang tidak


diketahui/tidak digunakan/tidak tersedia untuk suatu tuple.

• Berkaitan dengan ketidaklengkapan/pengecualian data


Representasi tidak adanya suatu nilai dan tidak sama nilainya
dengan Nol atau Spasi
21

Mana yang bisa NULL?

Student ID Name Telephone City Age


5109100150 Dika 087712343434 Jakarta 19
5109100010 Santika 082223235456 Surabaya 20
5109100165 Muhammad 087834332123 Yogyakarta 21
5109100100 Virky 085764323232 Solo 20
5109100050 Muhammad 089834545563 Jakarta 20
22

Entity Integrity

adalah sebuah peraturan integritas yang menyatakan bahwa setiap


tabel relasi harus mempunyai sebuah primary key, dan
atribut/sekumpulan atribut yang dipilih sebagai primary key harus
mempunyai nilai dan nilai tersebut harus unik dan tidak NULL.
23

Referential Integrity
adalah sebuah peraturan integritas yang menyatakan bahwa setiap
atribut sebuah tabel relasi yang menunjuk ke tabel relasi lainnya
harus memiliki nilai.
Student ID Name Telephone City Age
5109100150 Dika 087712343434 Jakarta 19
5109100010 Santika 082223235456 Surabaya 20
5109100165 Muhammad 087834332123 Yogyakarta 21
5109100100 Virky 085764323232 Solo 20
5109100050 Muhammad 089834545563 Jakarta 20

StudentID MK ID Nilai
5109100150 ISYS102 B
5109100001 ISYS102 B
24

Thank you 
25

Transformasi
ERD – Model Relasional
ISI2J4 - Sistem Basis Data

Program Studi S1 Sistem Informasi


FAKULTAS REKAYASA INDUSTRI
26

Step 1- Entity Kuat

• Untuk setiap entitas kuat, buat tabel baru


• Sertakan seluruh simple atribut
• Sedangkan untuk atribut komposit hanya dimuat komponen-komponennya saja. 
• Pilih salah satu atribut kunci sebagai primary key
27

MAHASISWA

NIM Nama Jalan Kode Pos Kota


28

Step 2 – Entity Lemah

• Untuk setiap entitas lemah, buat tabel baru


• Sertakan seluruh simple atribut
• Tambahkan primary key dari entitas kuatnya yang akan digunakan sebagai primary
key bersama-sama partial key dari entitas lemah
29

Employee
IDEmployee Nama

Dependent
ID_Penanggung Name Birth date Sex
30

Step 3 - Multivalued
• Untuk setiap multivalued atribut R, buatlah tabel baru R yang menyertakan atribut
dari multivalued tersebut.
• Tambahkan primary key dari relasi yang memiliki multivalued tersebut. Kedua
atribut membentuk primary key dari tabel tersebut
31

Step 3 - Multivalued

MAHASISWA

NIM Nama Jalan Kode Pos Kota

TELEPON
NIM NO telp
32

Step 4 – Relasi 1 : 1
• Opsi foreign key
Apabila salah satu berupa total participation, pilih relasi yang berpartisipasi total (relasi
R), masukan primary key dari sisi sebaliknya ke relasi R tersebut sehingga membentuk
foreign key
Masukkan juga simple atribute pada relasi yang di tengah ke relasi R
33

Step 4 – Relasi 1 : 1
Dosen
NID Nama

Kode Jur Nama Jur NID Periode


34

Step 4 – Relasi 1 : 1
• Opsi penggabungan relasi
Kedua entity types dan relationship digabungkan menjadi
satu relasi. Sesuai jika partisipasi kedua entity types dalam relationship tersebut
bersifat total.

Penduduk
ID P Nama No Akta
35

Step 4 – Relasi 1 : 1

• Opsi cross-reference / relationship relation


Membuat relasi baru yang mengandung primary key dari kedua entity types
yang terhubung dalam relationship tersebut.
Dapat dilakukan pada berbagai kondisi (partisipasi total maupun parsial)
36

Step 4 – Relasi 1 : 1

NID Nama

KAPRODI
NID Kode Jur Periode

Kode Jur Nama Jur NID


37

Step 5 – Relasi 1: N

Untuk setiap relasi binary 1:N dengan atau tanpa total participation maka primary key
dari sisi 1 masuk ke sisi N.
38
39

Step 6 – Relasi M : N
Untuk setiap relasi M:N, buatlah tabel baru R dengan atribut seluruh simple atribut
yang terdapat pada relasi tersebut.

Tambahkan primary key yang terdapat pada kedua sisi ke tabel R.

Kedua foreign key yang didapat dari kedua sisi tersebut


40

Mhasiswa
NIM Nama

MK
Kode MK Nama MK

Registrasi MK
NIM Kode MK Semester
41

Thank you 
42
Activity Completion
43
44
45

Anda mungkin juga menyukai