MODEL RELATIONAL
DATABASE
MODEL RELATIONAL
DATABASE
Model ini menjelaskan kepada pemakai
(user) tentang hubungan logik anatara
data dalam basis data dengan cara
menvisualisasikannya kedalam bentuk
tabel-tabel 2 dimensi yang terdiri dari
sejumlah baris dan kolom yang
KARAKTERISTIK DALAM
RELASI :
Semua entry atau elemen data pada suatu baris atau
kolom tertentu harus menpunyai nilai tunggal (single
value) atau suatu nilai yang tidak dapat dibagi-bagi lagi
(atomic Value), bukan suatu larik atau grup pengulangan
Suatu entry atau elemen data pada suatu kolom tertentu
dalam dalam relasi yang sama harus mempunyai jenis
yang sama
masing-masing kolom dalam suatu relasi mempunyai
nama unik (meskipun kolom-kolom dalam relasi yang
berbeda diijinkan mempunyai nama yang sama
pada suatu relasi atau tabel yang sama tidak ada 2 baris
KOMPONEN-KOMPONEN TABEL
RELASIONAL
Intension
Struktur penamaan (naming Structure),
menunjukan nama tabel dan nama atribut
yang ada, lengkap domain (batasan nilai
dan tipe datanya)
Extension
Menunjukan isi dari tabel (nilai-nilai dari
Batasan Integrity Constrain
dipengaruhi oleh integrity Referensial
yang meliputi
Key Constraint
: tidak mengijinkan ada nilai
null pada atribut yang digunakan sebagai
primary key pada semua record yang ada
dalam tabel.
Referensial Constraint
: memberikan
aturan-anilai-nilai dalam atribut kunci yang
digunakan untuk mengembnagkan/
ATURAN-ATURAN DALAM
PRIMARY KEY
Aturan lain yang berhubungan dengan
masalah integritas (Entity Integrity)
primary key yang dipilih yaitu :
Integrity Entity
: bahwa nilai atribut yang
dipilih sebagai primary key tidak boleh null
dan setiap record yang ada dalam relasi.
integrity Referensial
: berhubungan
dengan 2 atau lebih tabel relasi dalam
suatu sistem basis data yang
KERELASIAN (RELATIONSHIP )
ANTAR ENTITY.
Relasi : sebagai saling keterkaitan antara
kesatuan data dalam satu atau beberapa
tabel.
Kerelasian antar entitas dalam satu tabel
Tipe kerelasian paling sederhana, yaitu
kerelasian antar entitas (yang berupa record)
untuk menyediakan data/informasi dari atribut
dalam suatu tabel.
Kerelasian antar entitas dalam banyak tabel
Jenis pohon (tree)
Query Language / QL
Query Language adalah bahasa yang digunakan oleh
user untuk mendapatkan informasi dari basis data.
Query language terbagi 2 kategori, yaitu :
Procedural Language.
User memberikan instruksi pada sistem/DBMS untuk
melaksanakan urutan-urutan operasi/prosedur untuk
mendapatkan informasi yang diinginkan.
Pemrogram menjelaskan informasi apa (what) yang
diinginkan dan bagaimana cara mendapatkannya,
Contoh : Aljabar Relasitional dan SQL
Non-Procedural Language.
User menjelaskan informasi yang diharapkan tanpa
memberikan prosedur/urutan-urutan operasi tertentu untuk
mendapatkan informasi yg di inginkan.
Manaipulasi Data
Merupakan suatu cara untuk menyedaikan
data-data bagi para pengguna /pemakai
informasi untuk para pembuat keputusan.
Ada 2 tipe Manipulasi data yaitu :
1.
Aljabar Relational : harus dipikirkan
bagaimana relasi dan dikonstruksikan untuk
memenuhi kebutuhan data.
2.
Kalkulus Relational : hanya memikirkan
ALJABAR RELATIONAL
Aljabar relational adalah kumpulan
Operasi 2 ALJABAR
RELATIONAL
Operasi
Deskripsi
Projection Untuk menciptakan suatu relasi baru dengan menyeleksi atribut dari suatu relasi
Selection Untuk menciptakan suatu relasi baru dengan menyeleksi record-record atribut dari suatu relasi
Union Untuk menciptakan suatu relasi baru dengan mengabungkan secara vertikal record-record dari dua relasi
Intersection Untuk menciptakan suatu relasi baru dengan memuat record-record yang ada dalam kedua relasi.
Set-Difference Untuk menciptakan suatu relasi baru dengan memuat record-record yang ada dalam suatu relasi tetapi tidak ada dalam relasi yang lain
Division Untuk menciptakan suatu relasi baru dengan menyeleksi record-record dari suatu relasi yang didasarkan pada nilai-nilai atribut yang sama dalam memisahkan relasi
Contoh
X
Y
Z
a
b
c
d
e
f
g
h
i
g
b
c
E1
=
π
X, Z (E1) =
X
a
Z
c
d
f
g
i
Selection
Untuk menciptakan suatu relasi baru dengan
menyeleksi record-record atribut dari suatu relasi
Operator seleksi menyeleksi atribut-atribut di
sebuah relasi, yaitu atribut-atribut yang memenuhi
syarat/kondisi (p) yang sudah ditentukan
sebelumnya.
Dimana syarat/kondisinya (p) adalah ekspresi
logika yang terdiri dari :
Operand : Konstanta artibut/relasi
Operand pembanding : =, <, >, ≤, ≥, ≠
Operand logika :
٨
(and),
٧
(or) dan ~ (not)
Contoh
X
Y
Z
a
b
c
d
e
f
g
h
i
g
b
c
E1
=
π
X, Z (E1) =
X
a
Z
c
d
f
g
i
Union
Untuk menciptakan suatu relasi baru dengan
mengabungkan secara vertikal record-record dari dua
relasi
Operator Union ini akan membentuk relasi baru
dengan atribut-atribut yang terdapat direlasi E1, E2,
atau atribut-atribut yang terdapat di kedua relasi
tersebut.
Syarat : - Aritas Sama
- Domain atribut sama
Contoh
X
Y
Z
a
b
c
d
e
f
g
h
i
g
b
c
E1
=
E1 U E2 =
X
Y
Z
a
b
c
d
e
f
c
b
d
b
g
a
k
l
m
X
Y
Z
a
b
c
d
e
f
g
h
i
g
b
c
Intersection
Untuk menciptakan suatu relasi baru dengan
memuat record-record yang ada dalam kedua
relasi.
Operator interseksi untuk membentuk sebuah
relasi baru dengan record-record yang berasal
dari kedua relasi
Syarat : - Aritas Sama
- Domain atribut sama
Contoh
X
Y
Z
a
b
c
d
e
f
g
h
i
g
b
c
E1
=
E1
∩
E2 =
X
Y
Z
a
b
c
X
Y
Z
a
b
c
d
e
f
g
h
i
g
b
c
Set Difference
Untuk menciptakan suatu relasi baru dengan
memuat record-record yang ada dalam suatu
relasi tetapi tidak ada dalam relasi yang lain
Operator differensi untuk membentuk sebuah
relasi baru dengan record-record yang terdapat
di relasi E1 dan tidak terdapat di E2.
Syarat : - Aritas Sama
- Domain atribut sama
Contoh
X
Y
Z
a
b
c
d
e
f
g
h
i
g
b
c
E1
=
E1
-
E2 =
X
Y
Z
d
e
f
c
b
d
X
Y
Z
a
b
c
d
e
f
g
h
i
g
b
c
Division
Untuk menciptakan suatu relasi baru
dengan menyeleksi record-record dari
suatu relasi yang didasarkan pada
nilai-nilai atribut yang sama dalam
memisahkan relasi
Operator divisi merupakan operasi
pembagian record-record dari 2 relasi.
Contoh
Nama Cabang
X
Y
Z
Y
D
R
F
S
E1
=
E1
:
E2 =
Cabang
X
Z
F
Cabang
Y
S
Cartesian product
Untuk menciptakan suatu relasi baru yang
didasarkan pada kerelasian antar dua atribut dalam
relasi-relasi yang berbeda dengan cara
mengkombinasikan secara horizontal.
Operator Cartesian Product akan merangkai setiap
record di E1 dengan setiap E2 sehingga jika E1 terdiri
dari n-record dan E2 terdiri dari m-record, maka :
Jumlah record = E1 x E2, akan terdiri dari mn record
Contoh
X
Y
Z
1
c
d
5
e
f
6
g
h
E1
=
E1 X E2 =
X
Y
Z
P
Q
1
c
d
a 100
5
e
f
a 100
6
g
h
a 100
1
c
d
s
200
5
e
f
s
200
6
g
h
s
200
P
Q
a 100
s 200
Theta Join/Outer Join
Operator theta join sama dengan cartesian
product, tapi recordnya berdasarkan posisi
record.
Contoh
X
Y
Z
1
c
d
5
e
f
6
g
h
E1
=
E1
Xө
E2 =
X
Y
Z
P
Q
1
c
d
a 100
5
e
f
s
200
P
Q
a 100
s 200
Theta Join/Outer Join
Operator natural join merupakan operator yang
menggabungkan operasi cartesian produk
dengan operasi seleksi.
Contoh
X
Y
Z
a
b
c
d
b
c
c
a
d
f
b
h
s
b
d
E1
=
E1 |
X|
E2 =
X
Y
Z
R
a
b
c
d
a
b
c
z
d
b
c
d
d
b
c
z
s
b
d
x
Y
Z
R
b
c
d
b
c
z
b
d
x
OPERATOR MENGUBAH
DATABASE
ASSIGMENT
DELETE
INSERT
UPDATE
ASSIGMENT
Mengisi sementara relasi variabel
dengan relasi atau hasil suatu
operasi.
A
π
(E1)
Contoh :
A
π
Simpan.nama_nas
(nasabah)
DELETE
Menghapus satu atau beberapa
record dari relasi.
R
R – E
Contoh :
Simpan
Simpan -
σ
Simpan.nama_nas = ‘ dani’
INSERT
Menyisipkan satu beberapa record kedalam
relasi. Syarat aritas dan domain atribut harus
sama.
R
R U E
Contoh :
Simpan
Simpan U
σ
pinjam.jumlah < 500
(pinjam)
UPDATE
Mengubah nilai satu atau beberapa
record ke dalam relasi.
a
δ
D(R)
a : atribut yang diubah
D : ekspresi aritmatik
Contoh :
jumlah
δ
jumlah x 10%
(
σ
Simpan.jumlah >