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 :
  1. Relasi tunggal (Unary Relation)
  2. Relasi Multi entitas (N-ary relation)
  3. 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 :
  1. Sekuensial
  2. Mnemonic
  3. 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.
  1. 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












  1. 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
  1. 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..

  1. 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..!!!





  1. 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

Diberdayakan oleh Blogger.

Copyright © / Free Readings

Template by : Urang-kurai / powered by :blogger