ERD
(Entitiy Relathionship
Diagram)
Studi
Kasus : Database Restoran
I .
Seluruh himpunan entitas yang terlibat
Yang
menjadi Himpunan emntitas dari masalah di atas adalah
- PELANGGAN
- MAKANAN
- JURU_MASAK
II.
Menuntukan atribut-atribut key dari himpunan entitas yang ada.
- Yang menjadi atribut key dari Pelanggan adalah no_pelanggan
- Yang menjadi atribut key dari makanan adalah kode_makanan
- Yang menjadi atribut key dari juru masak adalah id_juru_masak
III.
Menentukan himpunan relasi di antara himpunan entitas yang ada
beserta foreign key-nya.
IV.
Menentukan derajat/kardinalitas relasi untuk setiap himpunan relasi
V.
Melengkapi himpunan entitas dan himpunan relasi dengan
atribut-atribut deskriptif (non key)
- 1 ke N menunjukan relasi ” One to Many “, artinya satu pelanggan bisa memesan banyak makanan.
- 1 ke N menunjukan relasi “one to many”, artinya Seorang juru_masak bisa memasak lebih dari satu jenis makanan
VI. Derajat
relasi minimum
- Seorang pelanggan bisa memesan banyak makanan atau paling sedikit satu makanan.
- Setiap koki bisa memasak banyak menu makanan atau paling sedikit satu menu makanan.
Week entity sets
Week
entity sets atau himpunan entitas lemah merupakan himpunan yang
timbul muncul karena adanay himpunan entitas yang lain.
Disini menunjukan
bahwa seorang juru_masak memiliki anak dan menyengipaling sedikit
sebuah hobbi. Anak dan hobbi merupakan entitas baru (lemah) yang
muncul dari himpuanan entitas juru_masak.
Sub entitas.
Sub entitas
merupakan himpunan entitas ynag beranggotakan entitas- entitas yang
merupakan bagian dari himpunan entitas yang lebih utama. Sub entitas
merupakan hasil dekomposisi (spesialisasi) himpunan entitas
berdasarkan pengelompokan tertentu. Pada Kasus di atas, sub entitas
tidak perlu timbul dari entitas juru_masak, hal ini dikarenakan bahwa
pada pelaksanannya, juru masak tidak dibagai menjadi lebih spesifik
lagi, masudnya tidak ada pengelompokan juru masak berdasarkan
kriteria tertentu.
Varian Relasi.
Varian relasi
merupakan relasi yang timbul dari 2 himpunan entitas yang berbeda,
merupakan relasi yang paling umum digunakan. Varian relasi sendiri
terbagi atas 3 :
- Relasi tunggal (Unary Relation)
- Relasi Multi entitas (N-ary relation)
- Relasi Ganda (Redudant Relation)
Varian
relasi tidak selalu digunakan pada tiap kasus. Penggunaanya
tergantung pada setiap entitas dan relasi yang saling berhubungan.
Jika dilihat dari varian relasi dan masing-masing entitas tersebut
tidak dapat membentuk jenis – jenis relasi di atas, maka
penggunaannya ditiadakan.
Spesialisasi dan
Generalisasi
Spesialisasi dan
generalisasi merupakan proses pengelompokan entitas-entitas menjadi
satu anggota. Spesialisasi dikenal dengan sebutan proses top-down.
Proses spesialisasi sendiri dilakukan dengan melihat perbedaan pada
atribut-atribut yang ada pada entitas. Sedangkan generalisasi
merupakn proses bottom-up. Proses generalisasi dilakuakn
dengan melihat persamaan yang ada pada atribut-atribut dalam beberapa
entitas.
Pada kasus diatas, jika
dilihat dari entitas-entitas dan atribut yang ada pada entitas
tersebut, jelas bahwa proses spesialisasi dan generalisasi tidak bisa
digunakan disebabkan atribut-atribut yang ada pada entitas- entitas
serta entitas-entitas itu sendiri hanya atau bisa berdiri sendiri.
Contoh : Entitas juru_masak tidak mungkin lagi digeneralisasikan
menjadi juru_masak lama dan juru_masak baru. Begitu juga pelanggan,
tidak mungkin ada data yang mencatat bahwa pelanggan ini merupakan
pelanggan tetap atau pelanggan baru, dan sebaganya.
Pengkodean Internal
Penggkodean internal
dilakuakan untuk mengefisiensi ruang penyimpanan. Pengkodean internal
sendiri terbagi 3, yaitu :
- Sekuensial
- Mnemonic
- Blok
Pada
kasus data base restoran di atas, penggunaan pengkodean internal
telah direrapkan langsung pada contoh data. Misalnya : Jenis Makanan
berupa Paket Ayam, pengkodean kode makanan di awali huruf PA
yang menunjukan paket ayam. TT menunjukan paket Tahu &
Tempe, dan sebagainya.
Implementsi
Basis Data
Transformasi model
data ke basis data fisik.
- Setiap himpunan entitas akan diimplementasikan sebagai sebuah tabel
Tabel : Pelanggan
| Id_pelanggan | Nama_pelanggan | No_meja |
Tabel : Makanan
| Jenis_makanan | Kode_makanan | Nama_makanan | Harga_makanan |
Tabel : Juru Masak
| Id_Jurumasak | Nama_jurumasak | Tgl_lahir | alamat | No_telp |
- Relasi dengan derajat relasi one to many pada relasin memesan.
Tabel Pelanggan
| Id_pelanggan | Nama_pelanggan | No_meja |
Tabel Makanan
| Jenis_makanan | Kode_makanan | Nama_makanan | Harga_makanan | Id_pelanggan | Kode_makananan |
- Relasi Many to One pada relasi memasak
Tabel Makanan
| Jenis_makanan | Kode_makanan | Nama_makanan | Harga_makanan |
Tabel Juru_masak
| Id_Jurumasak | Nama_jurumasak | Tgl_lahir | alamat | No_telp | Kode_makanan |
Untuk Week Entitas..
Tabel : Juru_masak
| Id_Jurumasak | Nama_jurumasak | Tgl_lahir | alamat | No_telp |
Tabel : Anak
| Id_jurumasak | Nama_anak | Jenis_kelamin | pendidikan |
Tabel : Hobbi
| Id_jurumasak | hobbi |
Sampel
data untuk tiap-tiap entitas
- Untuk entitas pelanggan
No
|
ID_pelanggan
|
Nama_pelanggan(Atas Nama)
|
No_meja
|
1
|
IDP001
|
Anton
|
1
|
2
|
IDP002
|
Bayu
|
3
|
3
|
IDP003
|
Toni
|
2
|
4
|
IDP004
|
Tiitn
|
5
|
5
|
IDP005
|
Uya
|
7
|
6
|
IDP006
|
Icha
|
8
|
7
|
IDP007
|
Icad
|
10
|
8
|
IDP008
|
hendrik
|
2
|
9
|
IDP009
|
Gery
|
5
|
10
|
IDP010
|
Mendy
|
4
|
11
|
IDP011
|
Mauren
|
6
|
12
|
IDP012
|
Gino
|
7
|
13
|
IDP013
|
Ilona
|
8
|
14
|
IDP114
|
Paula
|
10
|
15
|
IDP015
|
Jun
|
9
|
16
|
IDP016
|
Ceca
|
5
|
17
|
IDP017
|
Prily
|
4
|
18
|
IDP018
|
Hany
|
3
|
19
|
IDP019
|
Nesti
|
2
|
20
|
IDP020
|
Romi
|
1
|
21
|
IDP021
|
Heltin
|
2
|
22
|
IDP022
|
Nila
|
3
|
23
|
IDP023
|
Frensca
|
9
|
24
|
IDP024
|
Victor
|
7
|
25
|
IDP025
|
Listy
|
4
|
26
|
IDP026
|
Octa
|
9
|
27
|
IDP027
|
Indra
|
3
|
28
|
IDP028
|
Timo
|
9
|
29
|
IDP029
|
Kiki
|
2
|
30
|
IDP030
|
Monda
|
10
|
Data dalam SQL..
- Untuk Entitas makanan
| No | Jenis | Kode Makanan | Nama Makanan | Harga(Rp) |
| - | - | - | - | - |
| 1 |
Ayam
|
PA01
|
Ayam bakar kampung
|
10000
|
| 2 |
PA02
|
Ayam bakar goreng
|
6500
|
|
| 3 |
PA03
|
Ayam penyet kampung
|
12000
|
|
| 4 |
PA04
|
Ayam penyet negeri
|
8500
|
|
| 5 |
PA05
|
Paket ayam bakar
|
9000
|
|
| 6 |
PA06
|
Paket ayam penyet kampung
|
13000
|
|
| 7 |
PA07
|
Paket ayam penyet negeri
|
14500
|
|
| 8 |
PA08
|
Paket ayam crispy dada
|
10000
|
|
| 9 |
PA09
|
Paket ayam crispy sayap
|
8000
|
|
| 10 |
PA10
|
Balado pete
|
8000
|
|
| 11 |
PA11
|
Baldo cumi
|
15000
|
|
| 12 |
PA12
|
Balado terong
|
8000
|
|
| 13 |
PA13
|
Balado ayam
|
10000
|
|
| 14 |
PA14
|
Balado udang
|
15000
|
|
| 15 |
PA15
|
Balado special
|
20000
|
|
| 16 |
PA16
|
Sambal teri lombok hijau
|
8000
|
|
| 18 |
Tahu & Tempe
|
TT01
|
Tahu goreng
|
4000
|
| 19 |
TT02
|
Tempe goreng
|
4000
|
|
| 20 |
TT03
|
Tahu penyet
|
4000
|
|
| 21 |
TT04
|
Tempe penyet
|
4000
|
|
| 22 |
Nasi Goreng
|
NG01
|
Nasi goreng bakso
|
8000
|
| 23 |
NG02
|
Nasi goreng ayam
|
8000
|
|
| 24 |
NG03
|
Nasi goreng biasa
|
7000
|
|
| 25 |
NG04
|
Nasi goreng seafood
|
11000
|
|
| 26 |
Mie/Bakso
|
MB01
|
Mi ayam
|
6000
|
| 27 |
MB02
|
Mie ayam bakso
|
7000
|
|
| 28 |
MB03
|
Mie ayam bakso super
|
11000
|
|
| 29 |
MB04
|
Bakso
|
6000
|
|
| 30 |
MB05
|
Bakso super
|
8000
|
|
| 31 |
MB06
|
Soto
|
6000
|
|
| 32 |
Minuman
|
MN01
|
Es teh manis
|
1000
|
| 33 |
MN02
|
Es teh tawar
|
1000
|
|
| 34 |
MN03
|
Es jeruk
|
2500
|
|
| 35 |
MN04
|
Jus alpukad
|
5500
|
|
| 36 |
MN05
|
Jus jambu
|
5500
|
|
| 37 |
MN06
|
Jus jeruk
|
5500
|
|
| 38 |
MN07
|
Jus semangka
|
5500
|
|
| 39 |
MN08
|
Softdrink
|
4000
|
|
| 40 |
MN09
|
Soda gembira
|
4000
|
|
Data dalam SQL..!!!
- Untuk Entitas Juru_masak
| No | Id_jurumasak | Nama_jurumasak | Tangal_lahir | alamat | no_telp |
1
|
Id_001
|
Jono
|
1986-06-02
|
Kemiri
|
081343454915
|
2
|
Id_002
|
Doni
|
1985-08-23
|
Margosari
|
085243624949
|
3
|
Id_003
|
Awi
|
1984-02-13
|
Margosari
|
081247027886
|
4
|
Id_004
|
Bayu
|
1979-06-29
|
Kemiri
|
085243890501
|
5
|
Id_005
|
Sean
|
1989-02-14
|
Cempaka
|
081381195139
|
6
|
Id_006
|
Gery
|
1983-02-12
|
Puri
Satya
|
085727590719
|
7
|
Id_007
|
Hendrik
|
1988-12-05
|
Monginsidi
|
085243661962
|
8
|
Id_008
|
Gino
|
1985-07-04
|
Blotongan
|
085796901697
|
9
|
Id_009
|
Vembri
|
1983-09-12
|
Pungkursari
|
085243000737
|
10
|
Id_010
|
Icat
|
1985-06-23
|
Pungkursari
|
085692781272
|
Data dalam SQL..!!
Penerapan
data dalam SQL
Dalam SQL, kita
bisa melakukan beberapa perintah untuk memodifikasi data yang akan
ditampilkan. Cara ini biasa disebut DML atau Data Modification
Language.
Misalnya, pada tabel
daftar_menu, kita hanya ingin menampilkan hanya data yang jenis
makanannya adalah ayam. Berikut adalah perintahnya :
Hasilnya :
Misalnya untuk
menampilkan data karyawan yang namanya memiliki data nama memiliiki
kesamaan beberapa huruf. Berikut adalah perintahnya :
Hasilnya adalah sebagai
berikut :
DML juga bisa
dimodifikasi sedemikian rupa untuk hanay beberapa data tertentu dari
suatu tabel. Misalnya hanya ingin menampilkan data nama_jurumasak,
id_jurumasak dan alamat. Perintah yang digunakan adalah sebagai
berikut :
Dari perintah yang
digunakan, maka data hyang ditampilkan hanya nama_jurumasak,
id_jurumasak dan alamat.
Pada kasus diatas,
misalnya ada harga_makanan yang ingin di ganti
atau di update. Perintah yang digunkana adalah :
Before....!!!!!!!
After...!!!!!!
Misalya untuk meampilkan
data makaa, yang harganya lebih dari 10000, maka perintah yag
digunakan adalah sebagai berikut :
Maka, data yang
ditampilkan adalah data yang harganya lebih dari sama dengan
10000
Utuk meampilka data yang
kurang dari sama denga 10000, maka perintah yang digunakan adalah sbb
:
Maka data yag ditampilka
adalah data dari tabel daftar_menu yag harganya kurang dari 10000.
NB : Perubahannya
hanya tergantug pada operator yang digunakan.
0 komentar:
Posting Komentar