27
  MODEL RELASIONAL MODEL RELASIONAL Suheri S.T Suheri S.T [email protected] [email protected]

4 - Model Relasional

Embed Size (px)

DESCRIPTION

Modul Model Relational

Citation preview

Page 1: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 1/27

 

MODEL RELASIONALMODEL RELASIONAL

Suheri S.T Suheri S.T 

[email protected]@yahoo.com

Page 2: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 2/27

 

Model RelasionalModel Relasional

Model Relasional merupakanModel Relasional merupakan

kumpulan tabel berdimensi duakumpulan tabel berdimensi dua

(disebut relasi atau tabel) dengan(disebut relasi atau tabel) denganmasing-masing relasi (masing-masing relasi (relationsrelations))

tersusun atas tuple (baris) dantersusun atas tuple (baris) dan

atribut (kolom) pada suatu basisatribut (kolom) pada suatu basisdata.data.

Page 3: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 3/27

 

RelasiRelasi

Struktur data dasar untuk menyimpan informasi.Struktur data dasar untuk menyimpan informasi. Digunakan untuk menyimpan entities, attributes,Digunakan untuk menyimpan entities, attributes,

relationships, juga weak entities.relationships, juga weak entities.

Strukturnya sebagai tabel (kumpulan tabel-tabel).Strukturnya sebagai tabel (kumpulan tabel-tabel). Setiap relasi memilikiSetiap relasi memiliki schemaschema yangyang

mendeskripsikan nama relasi dan atribut besertamendeskripsikan nama relasi dan atribut besertatipenya. ontoh !tipenya. ontoh !

mahasiswa " (nim ! string, nama#mhs ! string).mahasiswa " (nim ! string, nama#mhs ! string).

keterangan !keterangan !mahasiswa adalah nama relasi.mahasiswa adalah nama relasi.

nim dan nama#mhs adalah nama atribut.nim dan nama#mhs adalah nama atribut.

string adalah tipe dari atribut.string adalah tipe dari atribut.

Page 4: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 4/27

 

Contoh RelasiContoh Relasi

MahasiswaMahasiswanimnim nama_mhnama_mh

ss jurusan jurusan

$%$$$%$$

%%

&ndy&ndy  'eknik 'eknik

nformatikanformatika$%$$$%$$

*udi*udi  'eknik 'eknik

nformatikanformatika

$%$$$%$$++

RahmatRahmat  'eknik ndustri 'eknik ndustri

$%$$$%$$

*udi*udi  'eknik Mesin 'eknik Mesin

$%$$$%$$

SartikaSartika  'eknik Mesin 'eknik Mesin

$%$$$%$$

wanwan  'eknik /lektro 'eknik /lektro

Page 5: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 5/27

 

TabelTabel

 'erdiri dari baris-baris yang 'erdiri dari baris-baris yang

memuat data-data yangmemuat data-data yang

berhubungan satu sama lain.berhubungan satu sama lain. 'erdiri dari kolom-kolom yang 'erdiri dari kolom-kolom yang

memuat data-data dari tipe yangmemuat data-data dari tipe yang

sama.sama.

Page 6: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 6/27

 

Basis Data RelasionalBasis Data Relasional

*&RS disebut '012/*&RS disebut '012/

3424M disebut &''R*0'/3424M disebut &''R*0'/

 '&*/2 disebut R/2&'45 '&*/2 disebut R/2&'45

D4M&5 ! kumpulan dari hargaD4M&5 ! kumpulan dari harga

atomik yang dapat dimiliki olehatomik yang dapat dimiliki oleh

suatu kolom6atribut.suatu kolom6atribut.

Page 7: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 7/27 

erbedaan Istilaherbedaan Istilah

ER ModelER Model RelationalRelationalModelModel

DatabasDatabasee

TraditionalTraditionalro!rammerro!rammer

/ntity/ntity RelationRelation  'able 'able 7ile7ile

/ntity/ntitynstan8enstan8e

 'uple 'uple RowRow Re8ordRe8ord

&ttribute&ttribute &ttribute&ttribute olumnolumn 7ield7ield

denti9erdenti9er 3ey3ey 3ey3ey 3ey (link)3ey (link)

Page 8: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 8/27 

Mende"nisi#anMende"nisi#an

DomainDomain Memberi nama domain yangMemberi nama domain yang

sesuai dengan harga6nilai yangsesuai dengan harga6nilai yang

akan dimiliki domain tersebut.akan dimiliki domain tersebut.  Menentukan tipe data dari nilaiMenentukan tipe data dari nilai

yang akan membentuk domain.yang akan membentuk domain. 

Menentukan format dari domain.Menentukan format dari domain. 

Page 9: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 9/27 

$ar!a%Nilai dari suatu$ar!a%Nilai dari suatu

Tu&leTu&le :arus atomik !:arus atomik ! frst frst  normalnormal ormorm 

(normalisasi)(normalisasi)

Multi;alued attribute ! harusMulti;alued attribute ! harusdirepresentasikan pada relasi yang laindirepresentasikan pada relasi yang lain omposite attribute ! harus dinyatakanomposite attribute ! harus dinyatakan

dalam atribut sederhanadalam atribut sederhana 5ull ;alue !5ull ;alue !

< 5ilainya tidak diketahui5ilainya tidak diketahui< Merupakan nilai default dari setiapMerupakan nilai default dari setiap

tipe data untuk atribut.tipe data untuk atribut.

Page 10: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 10/27

 

Atribut 'un(i dariAtribut 'un(i dari

RelasiRelasi S01/R3/= ! satu atau lebih atributS01/R3/= ! satu atau lebih atribut

(kumpulan atribut) yang dapat(kumpulan atribut) yang dapatmembedakan setiap baris data dalammembedakan setiap baris data dalamtabel se8ara unik.tabel se8ara unik.

*erdasarkan 8ontoh relasi sebelumnya,*erdasarkan 8ontoh relasi sebelumnya,maka S01/R3/=-nya adalah ! >maka S01/R3/=-nya adalah ! >nimnim,,nama_mhsnama_mhs? dan >? dan >nimnim?.?.

&5DD&'/ 3/= ! relasi mungkin&5DD&'/ 3/= ! relasi mungkinmempunyai lebih dari satu key. Masing-mempunyai lebih dari satu key. Masing-masing disebut &5DD&'/ 3/=.masing disebut &5DD&'/ 3/=.

Page 11: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 11/27

 

Atribut 'un(i dariAtribut 'un(i dari

Relasi )lanj*Relasi )lanj* 1RM&R= 3/= (13) ! &5DD&'/ 3/= yang1RM&R= 3/= (13) ! &5DD&'/ 3/= yang

digunakan untuk mengidenti9kasikandigunakan untuk mengidenti9kasikan

tuple yang unik pada suatu relasi.tuple yang unik pada suatu relasi.*erdasarkan 8ontoh sebelumnya, maka*erdasarkan 8ontoh sebelumnya, maka

1RM&R= 3/=-nya adalah1RM&R= 3/=-nya adalah nimnim..

74R/@5 3/= (73) ! suatu74R/@5 3/= (73) ! suatu schemaschema relasirelasi

dapat memiliki atribut yang menunjuk kedapat memiliki atribut yang menunjuk ke1RM&R= 3/= dari relasi lain. &tribut ini1RM&R= 3/= dari relasi lain. &tribut ini

disebut 74R/@5 3/=.disebut 74R/@5 3/=.

Page 12: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 12/27

 

Batasan+BatasanBatasan+Batasan

Inte!ritas )Inte!rit,Inte!ritas )Inte!rit,Constraints*Constraints* Suatu batasan-batasan yang diberikanSuatu batasan-batasan yang diberikan

terhadap suatu relasi.terhadap suatu relasi.

Ditetapkan ketikaDitetapkan ketika schemaschema dide9nisikan.dide9nisikan.

Di8ek ketika relasi-relasi dimodi9kasiDi8ek ketika relasi-relasi dimodi9kasi

atau dimanipulasi (penambahan,atau dimanipulasi (penambahan,

pengubahan, penghapusan danpengubahan, penghapusan dan

pen8arian6menampilkan data).pen8arian6menampilkan data).

Page 13: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 13/27

 

rimar, 'e,rimar, 'e,

ConstraintsConstraints Mempunyai sifat dimana suatuMempunyai sifat dimana suatu

kolom tidak boleh bernilaikolom tidak boleh bernilai NULLNULL 

dan harus unik (tidak memilikidan harus unik (tidak memilikinilai yang sama dalam satunilai yang sama dalam satu

kolom).kolom).

Page 14: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 14/27

 

Re-erential Inte!rit,Re-erential Inte!rit,

Satu baris pada satu relasiSatu baris pada satu relasi

menjadi referensi darimenjadi referensi dari

sekumpulan baris dari relasi lain.sekumpulan baris dari relasi lain.:al ini bisa terjadi karena ada:al ini bisa terjadi karena ada

74R/@5 3/=.74R/@5 3/=.

Page 15: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 15/27

 

 'ahap-'ahap 'ransformasi ! 'ahap-'ahap 'ransformasi !

%.%. /ntity-Relationship Diagram menjadi basis data./ntity-Relationship Diagram menjadi basis data.

.. /ntity menjadi tabel dan atribut menjadi kolom69eld dari tabel./ntity menjadi tabel dan atribut menjadi kolom69eld dari tabel.+.+. /ntitas lemah/ntitas lemah  key dari AownerB (entitas kuat) ke tabel entitaskey dari AownerB (entitas kuat) ke tabel entitas

lemah.lemah.

.. Setiap tipe entity dibuat suatu tabel yang memuat semua atributSetiap tipe entity dibuat suatu tabel yang memuat semua atributsimple, sedangkan untuk atribut komposit hanya dimuat komponen-simple, sedangkan untuk atribut komposit hanya dimuat komponen-komponennya saja. ontoh !komponennya saja. ontoh !

Trans-ormasi E+R Dia!ram #eTrans-ormasi E+R Dia!ram #e

Basis Data RelationalBasis Data Relational

street

8ity state

Cip#8ode

address8ustomer

id

name

iidd

namnamee

streestreett

8it8ityy

statstatee

Cip#8odCip#8odee

 'abel ustomer

Page 16: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 16/27

 

.. Setiap tabel yang mempunyai atribut multi;alue,Setiap tabel yang mempunyai atribut multi;alue,

buatlah tabel baru dimana primary key-nyabuatlah tabel baru dimana primary key-nya

merupakan gabungan dari primary key dari tabelmerupakan gabungan dari primary key dari tabel

tersebut dengan atribut multi;alue.tersebut dengan atribut multi;alue.

Trans-ormasi E+R Dia!ram #eTrans-ormasi E+R Dia!ram #e

Basis Data Relational )lanj*Basis Data Relational )lanj*

proyek

no#proyek

nama#proyek

lokasii

no#proyeno#proyekk

nama#proynama#proyekek

 'abel 1royek

 'abel 2okasi#1royek

no#proyeno#proyekk

lokalokasisi

Page 17: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 17/27

 

.. Setiap unary relationship %!5, selain membuat tabelSetiap unary relationship %!5, selain membuat tabelbaru berdasarkan entity, buat juga tabel barubaru berdasarkan entity, buat juga tabel baruberdasarkan relationship-nya dengan atribut kun8iberdasarkan relationship-nya dengan atribut kun8itamu (foreign key) berdasarkan atribut kun8i daritamu (foreign key) berdasarkan atribut kun8i dari

entity tersebut dan atribut kun8i alternatif sebagaientity tersebut dan atribut kun8i alternatif sebagaiprimary key-nya.primary key-nya.

Trans-ormasi E+R Dia!ram #eTrans-ormasi E+R Dia!ram #e

Basis Data Relational )lanj*Basis Data Relational )lanj*

employee

employee#id

employee#name

super;ision

%

5

employee# employee# idid

employee#naemployee#nameme

 'abel /mployee

 'abel Super;ision

super;isor# super;isor# idid

employee# employee# idid

Page 18: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 18/27

 

Trans-ormasi E+R Dia!ram #eTrans-ormasi E+R Dia!ram #e

Basis Data Relational )lanj*Basis Data Relational )lanj*

.. 0ntuk R %!% dengan atau tanpa total parti8ipation maka0ntuk R %!% dengan atau tanpa total parti8ipation makaakan dibuat tabel baru berdasarkan relationship, dimanaakan dibuat tabel baru berdasarkan relationship, dimanakolom-kolomnya terdiri dari alternate key, dan primarykolom-kolomnya terdiri dari alternate key, dan primarykey dari masing-masing entity.key dari masing-masing entity.

nipnip 5ama#d5ama#dosos

 'abel Dosen

kode#jukode#ju

rr

nama#jnama#j

urur

 'abel Eurusan

periodperiodee

kode#jukode#jurr

ninipp

 'abel kaprodi

Dosen

nip nama#dos

 Eurusan

kode#jur nama#jur

mengepalai

%

%

periode

Page 19: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 19/27

 

Trans-ormasi E+R Dia!ramTrans-ormasi E+R Dia!ram

#e#e

Basis Data Relational )lanj*Basis Data Relational )lanj*F.F. 0ntuk R %!5 dengan atau tanpa total parti8ipation0ntuk R %!5 dengan atau tanpa total parti8ipation

maka primary key dari sisi % masuk ke sisi 5.maka primary key dari sisi % masuk ke sisi 5.

nipnip nama#dnama#dosos

 'abel Dosen

nimnim nama#mnama#mhshs

nipnip

 'abel Mahasiswa

Dosen

nip nama#dos

mahasiswa

nim nama#mhs

perwalian

%

5

Page 20: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 20/27

 

Trans-ormasi E+R Dia!ramTrans-ormasi E+R Dia!ram

#e#e

Basis Data Relational )lanj*Basis Data Relational )lanj*G.G. 0ntuk R M!50ntuk R M!5  dibuat tabel tersendiri berdasarkandibuat tabel tersendiri berdasarkan

relationshipnya dengan kolom-kolomnya terdiri darirelationshipnya dengan kolom-kolomnya terdiri dari

alternate key dan primary key dari masing-masingalternate key dan primary key dari masing-masing

entity.entity.

ninimm

nama#mnama#mhshs

 'abel Mahasiswa

kode#mkode#m

kk

nama#mnama#m

kk

 'abel Matakuliah

mahasiswa

nim nama#mhs

matakuliah

kode#mk nama#mk

mengambil

5

M

semestersemester nini

mm

kode#mkode#m

kk

 'abel 3RSsemester

Page 21: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 21/27

 

Studi 'asusStudi 'asus

 'ransformasikan /R Model dari 'ransformasikan /R Model dari

studi kasus sebelumnya ke Modelstudi kasus sebelumnya ke Model

Relasional.Relasional.

Page 22: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 22/27

 

Entit, Relationshi&Entit, Relationshi&

Dia!ram Rental .CD /ILMDia!ram Rental .CD /ILM

3elompok9lm

 jenis harga#sewa

7ilm

kode#9lm

 judul

 jml#9lm

 jml#keping

dikelompokkan

% 5

ustomer

no#identitas

 jenis#identitas

nama alamat

M

5

menyewa

tgl#sewa total#9lm

total#harga

dendatgl#kembali

kode#sewa

Page 23: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 23/27

 

Trans-ormasi ER Model #eTrans-ormasi ER Model #e

Basis Data RelasionalBasis Data Relasional

Tabel 'elom&o#/ilmTabel 'elom&o#/ilm

Tabel "lmTabel "lm

3elompok7ilm

 jenis harga#sewa

7ilm

kode#9lm

 judul

 jml#9lm

 jml#keping

dikelompokkan

% 5

 jeni jeniss

har!a_sewhar!a_sewaa

#ode_"l#ode_"lmm

 jeni jeniss

 judu judull

 jml_#e&in jml_#e&in!!

 jml_"l jml_"lmm

Page 24: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 24/27

 

Trans-ormasi ERD #eTrans-ormasi ERD #e

Basis Data Relasional )lanj*Basis Data Relasional )lanj*

Tabel (ustomerTabel (ustomer

Tabel men,ewaTabel men,ewa, karena setiap 8ustomer dapat menyewa, karena setiap 8ustomer dapat menyewa

lebih dari satu 9lm, maka pada relasi menyewa terdapatlebih dari satu 9lm, maka pada relasi menyewa terdapat

atribut multi;alue berupa kode#9lm, sehingga relasiatribut multi;alue berupa kode#9lm, sehingga relasi

no_identitano_identita

ss

 jenis_identit jenis_identit

asas

namnam

aa

alamaalama

tt

7ilm

kode#9lm judul

 jml#9lm

 jml#keping

5ustomer

no#identitas

 jenis#identitas

nama

alamat

Mmenyewa

tgl#sewa

total#9lm

total#harga

denda

tgl#kembalikode#sewa

Page 25: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 25/27

 

Trans-ormasi ERD #eTrans-ormasi ERD #e

Basis Data RelasionalBasis Data Relasional)lanj*)lanj* Tabel men,ewaTabel men,ewa, penambahan atribut kode#sewa, penambahan atribut kode#sewa

sebagai atribut alternatif.sebagai atribut alternatif.

Tabel detailmen,ewaTabel detailmen,ewa

#ode_sew#ode_sew

aa

no_identitano_identita

ss

t!l_sewt!l_sew

aa

tot_"ltot_"l

mm

t!l_#embat!l_#emba

lili

tot_hrtot_hr

!!

denddend

aa

#ode_sewa#ode_sewa

#ode_"lm#ode_"lm

Page 26: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 26/27

 

$asil A#hir )Basis Data$asil A#hir )Basis Data

Relational*Relational*

 jenis jenis har!a_sewhar!a_sewaa

a8tioa8tionn

+$$$+$$$

dramdram

aa

+$$+$$

hororhoror +$$$+$$$

#ode_"l#ode_"lmm

 jenis jenis  judul judul  jml_#e&in jml_#e&in!!

 jml_"l jml_"lmm

&$%&$% a8tioa8tionn

SpidermanSpiderman ++

&$&$ a8tioa8tio

nn

SpidermanSpiderman

D$%D$% dramdramaa

2o;e Story2o;e Story ++

:$%:$% hororhoror /;il Death/;il Death

no_identitno_identitasas

 jenis_identit jenis_identitasas

namnamaa

alamatalamat

$$%$$% SMSM &ndi&ndi pontianpontianakak

#ode_sew#ode_sewaa

no_identitno_identitasas

t!l_sewat!l_sewa tot_"ltot_"lmm

t!l_#embat!l_#embalili

tot_hrtot_hr!!

denddendaa

S$$$%S$$$% $$%$$% $%6$%6$$$%6$%6$$ $6$%6$$$6$%6$$ $$$$$$ $$

S$$$S$$$ $$$$ $+6$%6$$$+6$%6$$ %% $+6$%6$$$+6$%6$$ +$$+$$ $$

S$$$+S$$$+ $$%$$% $6$%6$$$6$%6$$ ++ $F6$%6$$$F6$%6$$ G$$G$$ $$

#ode_sew#ode_sewaa

#ode_"l#ode_"lmm

S$$$%S$$$% &$%&$%

S$$$%S$$$% &$&$

S$$$S$$$ D$%D$%

S$$$+S$$$+ &$&$

S$$$+S$$$+ D$%D$%

S$$$+S$$$+ :$%:$%

#elom&o#"lm "lm

(ustomer

men,ewadetailmen,ewa

Page 27: 4 - Model Relasional

7/18/2019 4 - Model Relasional

http://slidepdf.com/reader/full/4-model-relasional 27/27

Bahasa 0uer,Bahasa 0uer,

*ahasa yang digunakan oleh pemakai untuk*ahasa yang digunakan oleh pemakai untukmemperoleh informasi dari basis data.memperoleh informasi dari basis data.

3ategori bahasa Huery3ategori bahasa Huery< 1rosedural ! user menginstruksikan ke sistem agar1rosedural ! user menginstruksikan ke sistem agar

membentuk serangkaian operasi dalam basis datamembentuk serangkaian operasi dalam basis datauntuk mengeluarkan hasil yang diinginkanuntuk mengeluarkan hasil yang diinginkan

< 5on-prosedural ! user mendeskripsikan informasi5on-prosedural ! user mendeskripsikan informasiyang diinginkan tanpa memberikan prosedur detailyang diinginkan tanpa memberikan prosedur detailuntuk menghasilkan informasi tersebut.untuk menghasilkan informasi tersebut.

*ahasa Huery didasari oleh bahasa murni, yaitu !*ahasa Huery didasari oleh bahasa murni, yaitu !< &ljabar relasional (Relational &lgebra) ! Huery&ljabar relasional (Relational &lgebra) ! Huery

prosedural.prosedural.< 3alkulus Relasional (al8ulus Relational) ! Huery3alkulus Relasional (al8ulus Relational) ! Huery

non-prosedural.non-prosedural.