59
PERANCANGAN SISTEM
4.1 DFD 4.1.1 DFD Context Gambar 4.1 DFD Context
4.1.2 DFD Level 0
Gambar 4.3 DFD Level 1
4.2 Perancangan Basis Data Konseptual
Pada tahap perancangan basis data konseptual ini, perancangan tertuju pada suatu proses dimana model informasi yang digunakan dalam perusahaan tersebut tidak tergantung pada apapun dan juga belum memperhatikan secara fisik dan tampilan. Dalam tahap ini dilakukan identifikasi entitas, relasi, atribut.
Langkah 1 : Membangun data model konseptual lokal untuk setiap view 4.2.1 Mengidentifikasi Tipe-Tipe Entitas
Berikut ini merupakan entitas-entitas yang dibutuhkan perusahaan telah melalui proses analisa sistem yang sedang berjalan. Entitas-entitas tersebut akan dijelaskan pada tabel 4.1 di bawah ini.
No. Nama Entitas Deskripsi Alias Kegiatan
1 DaftarPelanggan M erupakan entitas
yang memberikan informasi tentang bagaimana melakukan pendaftaran pelanggan
Registrasi Setiap calon pelanggan melakukan pendaftaran pelanggan melalui website pada PT. Era Reportama Nusantara.
2 Ms_Pelanggan M erupakan entitas
yang memberikan informasi mengenai profil pelanggan. Profile Pelanggan Setiap calon pelanggan yang terdaftar sebagai pelanggan tetap PT. Era Reportama Nusantara.
3 Ms_Barang M erupakan entitas
yang memberikan informasi mengenai ketersediaan dan jumlah barang
Produk Setiap barang yang masuk dan keluar
mempengaruhi persediaan barang
4 Ms_Karyawan M erupakan entitas
yang memberikan
Pegawai Setiap pegawai yang bekerja
informasi mengenai pegawai yang bekerja
harus mengetahui
tugas dan tanggung jawab masing-masing.
5 Ms_Jasa M erupakan entitas
yang menawarkan Jasa dalam bentuk paket-paket yang disediakan
Packet Setiap jasa yang
ditawarkan akan dipilih oleh pelanggan dengan harga yang relatif.
6 TrPemesanan M erupakan entitas
yang memberikan informasi mengenai pemesanan yang dilakukan pelanggan Transaksi Pemesanan paket Setiap pelanggan yang telah mendaftar dapat melakukan Pemesanan paket
7 TrPenjualan M erupakan entitas
yang memberikan informasi mengenai penjualan yang dilakukan oleh pegawai Transaksi Penjualan Setiap pemesanan paket yang dilakukan akan di cek ketersediaannya yang kemudian dilanjutkan ke pengiriman
yang memberikan informasi mengenai tujuan pengiriman paket
Paket paket yang
dilakukan akan dikirimkan ke tujuan
9 Ms_Promosi M erupakan entitas yang memberikan informasi mengenai paket-paket yang dijual oleh perusahaan
Promosi Paket
Setiap promosi paket yang dilakukan.
10 TrPembelian M erupakan entitas
yang memberikan informasi mengenai pembelian barang untuk memenuhi persediaan barang Transaksi Pembelian Setiap Pembelian yang dilakukan.
11 Q&A M erupakan entitas
yang memberikan tempat untuk pelanggan bertanya seputar IT dan promosi yang ditawarkan
Q&A Setiap pertanyaan
yang di ajukan oleh pelanggan akan di jawab oleh pegawai dalam waktu 1 x 24 jam.
4.2.2 Mengidentifikasi Tipe-Tipe Relasi
Berikut ini merupakan tahapan untuk menentukan hubungan-hubungan penting yang ada di antara jenis-jenis entitas. Relasi antar tiap entitas dapat dilihat pada Tabel 4.2
Tabel 4.2 Tabel Kamus Data yang Menunjukan Relasi Antar Tipe Entitas
Nama Entitas Multiplicity Relasi Nama Entitas Multiplicity
DaftarPelanggan 1..1 M enghasilkan Ms_Pelanggan 1..*
Ms_Pelanggan 1..1 M elakukan TrPemesanan 0..*
1..1 M enanyakan Q&A 0..*
Ms_Karyawan 1..1 M engurus TrPemesanan 0..*
1..1 M emproses TrPenjualan 0..* 1..1 M elakukan Ms_Pengiriman 1..* 1..1 M enjawab Q&A 0..* 1..1 M embuat Ms_Promosi 0..* 1..1 M elakukan Ms_Pemeliharaan 0..* yang melakukan pengecekan terhadap kualitas barang yang akan di jual pengecekan barang yang dilakukan oeh pegawai untuk memastikan barang layak pakai atau tidak.
1..1 M emproses TrPembelian 0..*
TrPemesanan 1..* M emiliki Ms_Barang 1..*
1..* M emiliki Ms_Jasa 1..* 1..1 Berhubungan Dengan TrPenjualan 1..1 TrPenjualan 1..1 Berhubungan Dengan Ms_Pengiriman 1..1
Ms_Promosi 1..1 M enawarkan Ms_Pelanggan 1..*
TrPembelian 1..* M enambah Ms_Barang 1..*
1..1 Berhubungan
Dengan
Gambar 4.4 ERD Konseptual
4.2.3 Mengidentifikasi dan Menghubungkan Atribut Dengan Entitas atau Tipe Entitas
Tabel 4.3 Identifikasi dan hubungan antara Atribut dengan Entitas
Entitas Atribut Deskripsi Tipe dan
Panjang Data
Null Multi Valued
DaftarPelanggan Kd_Daftar Kode Daftar
yang unik
Char (5) No No
pendaftaran
Ms_Pelanggan ID_Pelanggan ID pelanggan
yang unik
Char (5) No No
Username Username untuk login
Char (15) No No
Password Password untuk login Char (10) No No Nm_Perusahaan Nama Perusahaan Varchar (50) No No Alm_Perusahaan Alamat Perusahaan Varchar (100) No No
Telp_Perusahaan Nomor Telepon
Perusahaan
Varchar (12)
No yes
Email_Perusahaan Email M ilik
Perusahaan
Varchar (40)
No No
Ms_Barang Kd_Barang Kode Barang
yang unik
Char (5) No No
Nm_Barang Nama Barang Varchar
(20)
No No
Jenis_Barang Jenis Barang Varchar
(10) No No Definisi M enjelaskan kegunaan Varchar (200) No No
barang
Harga Harga barang
yang sudah ditentukan Numeric No No Tgl_M asuk M enampilkan tanggal barang masuk
Date Yes Yes
Tgl_Keluar M enampilkan
tanggal barang keluar
Date Yes Yes
Stok_Barang M enampilkan
Jumlah Barang yang tersedia
Int Yes Yes
Ms_Karyawan ID_Karyawan ID karyawan
yang unik
Char (5) No No
Username Username untuk
login
Char (15) No No
Password Password untuk
login
Char (10) No No
Nm_Karyawan Nama Karyawan Varchar
(20)
No No
dipegang Karyawan (15) Alamat Alamat Karyawan Varchar (100) No No Telp_Karyawan Telepon Karyawan Varchar (15) No Yes
Ms_Jasa ID_Jasa ID Jasa yang
unik
Char (5) No No
Jenis_Jasa Jenis jasa yang
ditawarkan
Varchar (20)
No No
Paket Jenis Paket yang
disediakan
Varchar (20)
No No
Harga Informasi Harga
Paket
Numeric No No
TrPemesanan Kd_Pemesanan Kode
Pemesanan yang unik Char (5) No No Tgl_Pemesanan Tanggal pemesanan barang Date No No
TotalHarga Total harga dari
pemesanan
Numeric No No
mengenai Pemesanan
(50)
TrPenjualan Kd_Penjualan Kode Penjualan
yang uni Char (5) No No Tgl_Penjualan Tanggal penjualan barang Date No No
Diskon Korting harga
yang diberikan
Numeric No No
TotalHarga Total harga
setelah di korting
Numeric No No
Ms_Pengiriman ID_Pengiriman ID pengiriman
yang unk Char (5) No No Tgl_Pengiriman Tanggal dilakukan pengiriman barang Date No Yes
Karyawan Nama karyawan
yang melakukan pengiriman
Varchar (20)
Ms_Promosi Kd_Promosi Kode promosi
yang unik
Char (5) No No
Barang Nama Barang
yang di promosikan
Varchar (20)
No No
Paket Nama Paket
yang di promosikan Varchar (20) No No Tgl_Promosi Tanggal dilakukannya promosi Date No No
TrPembelian Kd_Pembelian Kode pembelian
yang unik Char (5) No No Tgl_Pembelian Tanggal terjadinya pembelian Date No Yes
Q&A ID_Q&A ID Q&A yang
unik
Char (5) No No
Tanya_Q&A Pertanyaan yang
dilakukan pelanggan
Varchar (200)
Jawab_Q&A Jawaban yang
dilakukan Karyawan
Varchar (200)
No No
Ms_Pemeliharaan Kd_Pemeliharaan Kode
pemeliharaan yang unik Char (5) No No Tgl_Pemeliharaan Tanggal dilakukan pemeliharaan Date No No
4.2.4 Menentukan domain atribut
Tabel 4.4 Tabel Identifikasi Domain Atribut
Nama Atribut Domain Value
Kd_Daftar Range Value D0000 – D9999
Tgl_Daftar Date
ID_Pelanggan Range Value P0000 – P9999
Username Pelanggan Range Value a-z
Password Pelanggan Range Value a-z
Nm_Perusahaan Range Value a-z, A-Z
Alm_Perusahaan Range Value a-z, A-Z, 0-9
Email Range Value a-z, A-Z, 0-9
Kd_Barang Range Value B0000 – B9999
Nm_Barang Range Value a-z
Jenis_Barang Range Value a-z
Definisi Range Value a-z, A-Z
Harga Range Value 0-9
Tgl_M asuk Date Tgl_Keluar Date Stok_Barang Numeric
ID_Karyawan Range Value K0000 – K9999
Username Karyawan Range Value a-z
Password Karyawan Range Value a-z
Nm_Karyawan Range Value a-z, A-Z
Jabatan Range Value a-z, A-Z
Alamat Range Value a-z, A-Z, 0-9
Telp Range Value 0-9
ID_Jasa Range Value J0000 – J9999
Jenis_Jasa Range Value a-z, A-Z
Paket Range Value a-z, A-Z
Harga Numeric
Kd_Pemesanan Range Value PM 000 – PM 999
Tgl_Pemesanan Date TotalHarga Numeric
Ket Range Value a-z, A-Z
Kd_Penjualan Range Value PJ000 – PJ999
Tgl_Penjualan Date
Diskon Range Value 0-9
TotalHarga Numeric
ID_Pengiriman Range Value PG000 – PG999
Tgl_Pengiriman Date
Karyawan Range Value a-z, A-Z
Kd_Promosi Range Value PR000 – PR9999
Barang Range Value a-z, A-Z
Paket Range Value a-z, A-Z
Tgl_Promosi Date
Kd_Pembelian Range Value PB000 – PB999
Tgl_Pembelian Date
ID_Q&A Range Value F0000 – F9999
Tanya_Q&A Range Value a-z, A-Z , 0-9
Jawab_Q&A Range Value a-z, A-Z , 0-9
Kd_Pemeliharaan Range Value PL000 – PL999
4.2.5 Menentukan Kandidat dan Primary Key
Tabel 4.5 Tabel Menentukan Kandidat dan Primary Key
Entity Candidate Key Primary Key
DaftarPelanggan Kd_Daftar Kd_Daftar
MsPelanggan ID_Pelanggan NmPerusahaan
Telp
ID_Pelanggan
MsBarang ID_Barang ID_Barang MsKaryawan ID_Karyawan
Telp
ID_Karyawan
MsJasa ID_Jasa ID_Jasa TrPemesanan Kd_Pemesanan Kd_Pemesanan
TrPenjualan Kd_Penjualan Kd_Penjualan
MsPengiriman ID_Pengiriman ID_Pengiriman MsPromosi Kd_Promosi Kd_Promosi
TrPembelian Kd_Pembelian Kd_Pembelian Q&A ID_Q&A ID_Q&A
Gambar 4.5 gambar ERD konseptual dengan primary key
4.2.6 Mempertimbangkan penggunaan konsep model yang lebih tinggi
Dalam tahap ini menjelaskan tentang pengembangan dari model entitas dengan menggunakan Enhanced Modelling Concept, seperti spesialisasi atau generalisasi. Namun pada Gambar pada tabel 4.3 tidak menunjukkan adanya penggunaan Enhanced tersebut baik itu spesialisasi ataupun generalisasinya
4.2.7 Memeriksa Redudansi pada model
Pada tahap ini menjelaskan tentang pemeriksaan terhadap data-data yang redundan dan kemudian dihilangkan, maksudnya adalah pengulangan data-data yang berkelanjutan jika proses insert,
update dan delete dilakukan. Pada Tahap ini terdapat 2 langkah untuk
memeriksanya yaitu :
1. Memeriksa kembali one-to-one relationship ( 1..1 )
Pada tahap ini menjelaskan Kemungkinan ada 2 entitas yang menggambarkan objek yang sama dalam suatu perusahaan. M aka, kedua entitas tersebut harus digabungkan. Apabila primary
key berbeda maka pilih salah satu primary key dan yang lainnya
menjadi candidate key.
Contoh ERD pada gambar 4.4 yang dapat menjelaskan tahapan ini :
a. Hubungan antara entitas TrPemesanan dengan TrPenjualan memiliki hubungan one-to-one seperti gambar di bawah ini :
b. Hubungan antara entitas TrPenjualan dengan M sPengiriman memiliki memiliki hubungan one-to-one seperti gambar di bawah ini :
2. Menghapus relasi yang menunjukkan redundancy
Pada tahap ini menjelaskan identifikasi model data yang redundan kemudian menghapus relasi tersebut. Namun dalam ERD yang di buat, tidak menunjukkan adanya relasi yang redundan pada entitas-entitas ERD Konseptual pada gambar 4.4.
4.2.8 Memvalidasi model data konseptual lokal dengan transaksi pengguna
Pada tahapan ini menjelaskan tentang pemeriksaan model yang telah dihasilkan apakah mendukung transaksi pada view. Pemeriksaan ini dapat menggunakan 2 langkah yaitu :
1. M endeskripsikan transaksi 2. M enggunakan jalur transaksi
Gambar 4.6 ERD konseptual dengan alur transaksi.
Adapun beberapa transaksi – transaksi yang terjadi adalah sebagai berikut :
a. Pegawai melakukan pemeliharaan barang dalam waktu sebulan sekali.
b. Pegawai membuat daftar barang untuk diberikan ke bagian promosi. c. Bagian promosi menawarkan barang kepada pelanggan.
d. Pendaftaran yang dilakukan oleh calon pelanggan. e. Pengajuan pertanyaan oleh pelanggan.
f. Pegawai menjawab pertanyaan pelanggan.
g. Pelanggan melakukan transaksi pemesanan barang. h. Pegawai mengurus setiap transaksi pemesanan barang.
i. Pegawai melakukan proses pengiriman barang kepada pelanggan. j. Pegawai memproses setiap transaksi penjualan barang.
k. M enampilkan jasa yang dipesan pelanggan.
l. M emasukkan data transaksi pemesanan pada transaksi pembelian berdasarkan data – data yang dipesan pelanggan.
m. M enampilkan seluruh data yang dipesan pelanggan. n. Setiap transaksi pembelian menambah stok barang.
o. M emasukkan data – data pembelian berdasarkan data – data yang dipesan perusahaan.
p. M emasukkan data – data penjualan berdasarkan data – data barang yang telah dikirim.
q. Pegawai memproses setiap transaksi pembelian barang.
4.3 Perancangan Basis Data Logikal
Perancangan ini merupakan memproses pembuatan suatu model informasi yang digunakan di dalam suatu organisasi berdasarkan model data yang spesifik, tetapi tidak tergantung pada DBM S dan hardware-hardware lainnya.
Perancangan basis data logikal ini terdiri dari langkah – langkah sebagai berikut :
Langkah 2: Membuat dan memvalidasi model data logikal lokal untuk setiap bagian.
4.3.1 Menghilangkan bagian – bagian yang tidak sesuai dengan model relasi
Tujuan dari langkah ini adalah untuk menghilangkan fitur – fitur yang tidak sesuai dengan model relasi data konseptual.
1. M enghilangkan hubungan many-to-many pada entitas
1.1 Terdapat entitas yang mempunyai hubungan many-to-many pada entitas TrPemesanan dengan M sBarang dan menghasilkan entitas baru yang bernama DetailPemesananBarang.
1.2 Terdapat entitas yang mempunyai hubungan many-to-many pada entitas TrPemesanan dengan M sJasa dan menghasilkan entitas baru yang bernama DetailPemesananJasa.
1.3 Terdapat entitas yang mempunyai hubungan many-to-many pada entitas TrPembelian dengan M sBarang dan menghasil entitas baru yang bernama DetailPembelianBarang.
2. M enghilangkan attribut multi-valued 2.1 Ms_Karyawan dengan Telp_Karyawan
Atribut Telp_Karyawan yang didapat dari entitas Ms_Karyawan dihilangkan dan menghasilkan entitas baru yang bernama Telp_Karyawan.
Atribut Telp_Perusahaan yang didapat dari entitas Ms_Pelanggan dihilangkan dan menghasilkan entitas baru yang bernama Telp_Perusahaan.
2.3 Jawab_Q&A dengan Q&A
Atribut Jawab_Q&A yang didapat dari entitas Q&A dihilangkan dan menghasilkan entitas baru yang bernama JawabanQ&A
4.3.2 Mendapatkan relasi untuk model data logikal lokal
Tujuan dari langkah ini adalah mendapatkan relasi dari model data logikal logal untuk merepresentasikan pada beberapa entitas, relasi dan attribut yang telah diidentifikasi.
1. Strong entity types
M erupakan entitas dalam data model yang tidak bergantung pada entitas lainnya. Dengan kata lain entitas tersebut dapat berdiri sendiri. Di bawah ini merupakan entitas-entitas tersebut:
1.1 DaftarPelanggan
( Kd_Daftar, Tgl_Daftar ) Primary Key KdDaftar
1.2 Ms_Pelanggan
( ID_Pelanggan, username, password, Nm_Perusahaan, Alm_Perusahaan, Email )
Primary Key ID_Pelanggan
( Kd_Barang, Nm_Barang, Jenis_Barang, Definisi, Harga, Tgl_M asuk, Tgl_Keluar, Stok_Barang )
Primary Key Kd_Barang
1.4 Ms_Karyawan
( ID_Karyawan, username, password, Nm_Karyawan, Jabatan, Alamat )
Primary Key ID_Karyawan
1.5 Ms_Jasa
( ID_Jasa, Jenis_Jasa, Paket, Harga ) Primary Key ID_Jasa
1.6 Tr_Pemesanan
( Kd_Pemesanan, Tgl_Pemesanan, Total_Harga, Ket ) Primary Key Kd_Pemesanan
1.7 Tr_Penjualan
( Kd_Penjualan, Tgl_Penjualan, Diskon, Total_Harga) Primary Key Kd_Penjualan
1.8 Ms_Pengiriman
( Kd_Pengiriman, Tgl_Pengiriman, Karyawan ) Primary Key Kd_Pengiriman
1.9 Ms_Promosi
( Kd_Promosi, Barang, Paket, Tgl_Promosi ) Primary Key Kd_Promosi
1.10 Tr_Pembelian
Primary Key Kd_Pembelian
1.11 Q&A
( ID_Q&A, Tanya_Q&A ) Primary Key ID_Q&A
1.12 Ms_Pemeliharaan
( Kd_Pemeliharaan, Tgl_Pemeliharaan ) Primary Key Kd_Pemeliharaan
2. Weak entity types
M erupakan entitas data model yang bergantung pada entitas lainnya. Dengan kata lain entitas ini tidak dapat berdiri sendiri. D i bawah ini merupakan entitas-entitas tersebut :
2.1 DetailPemesananBarang
( Tgl_Pemesanan, Harga, Total_Harga ) Primary Key ( tidak ada )
2.2 DetailPembelianBarang
( Harga, Total_Harga ) Primary Key ( tidak ada )
2.3 JawabanQ&A
( JawabanPelanggan ) Primary Key ( tidak ada )
2.4 DetailPemesananJasa
( Tgl_Pemesanan, Harga, Total_Harga )
2.5 TelpKaryawan
( Telp )
Primary Key ( tidak ada )
2.6 TelpPerusahaan
( Telp )
Primary Key ( tidak ada ) 3. Tipe relasi one-to-many binary
a. Hubungan antara DaftarPelanggan dengan M s_Pelanggan kemudian memasukkan Kd_Daftar pada M s_Pelanggan
DaftarPelanggan ( Kd_Daftar, Tgl_Daftar )
Primary Key Kd_Daftar
Ms_Pelanggan ( ID_Pelanggan, Kd_Daftar, username, password, Nm_Perusahaan, Alm_Perusahaan, Email )
Primary Key ID_Pelanggan Foreign Key Kd_Daftar References DaftarPelanggan ( Kd_Daftar )
b. Hubungan antara M s_Pelanggan dengan TrPemesanan kemudian memasukkan ID_Pelanggan pada TrPemesanan
Ms_Pelanggan ( ID_Pelanggan, Kd_Daftar, username, password, Nm_Perusahaan, Alm_Perusahaan,
TrPemesanan ( Kd_Pemesanan,
ID_Pelanggan, Tgl_Pemesanan, Total_Harga, Ket )
Email )
Primary Key ID_Pelanggan
Primary Key Kd_Pemesanan Foreign Key ID_Pelanggan References M s_Pelanggan ( ID_Pelanggan )
c. Hubungan antara M s_Pelanggan dengan Q&A kemudian memasukkan ID_Pelanggan pada Q&A
Ms_Pelanggan ( ID_Pelanggan, Kd_Daftar, username, password, Nm_Perusahaan, Alm_Perusahaan, Email )
Primary Key ID_Pelanggan
Q&A ( ID_Q&A, ID_Pelanggan, Tanya_Q&A)
Primary Key ID_Q&A Foreign Key ID_Pelanggan References M s_Pelanggan ( ID_Pelanggan )
d. Hubungan antara M s_Karyawan dengan TrPemesanan kemudian memasukkan ID_Karyawan pada TrPemesanan.
Ms_Karyawan ( ID_Karyawan,
Username, password, Nm_Karyawan, Jabatan, alamat )
Primary Key ID_Karyawan
TrPemesanan ( Kd_Pemesanan,
ID_Pelanggan, ID_Karyawan,
Tgl_Pemesanan, Total_Harga, Ket )
Primary Key Kd_Pemesanan Foreign Key ID_Karyawan References M s_Karyawan
( ID_Karyawan )
e. Hubungan antara M s_Karyawan dengan TrPenjualan kemudian memasukkan ID_Karyawan pada TrPenjualan.
Ms_Karyawan ( ID_Karyawan,
Username, password, Nm_Karyawan, Jabatan, alamat )
Primary Key ID_Karyawan
TrPenjualan ( Kd_Penjualan,
ID_Karyawan, Tgl_Penjualan, Diskon, Total_Harga )
Primary Key Kd_Penjualan Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
f. Hubungan antara M s_Karyawan dengan M s_Pengiriman kemudian memasukkan ID_Karyawan pada M s_pengiriman
Ms_Karyawan ( ID_Karyawan,
Username, password, Nm_Karyawan, Jabatan, alamat )
Primary Key ID_Karyawan
Ms_Pengiriman ( ID_Pengiriman, ID_Karyawan, Tgl_Pengiriman, Karyawan )
Primary Key ID_Pengiriman Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
g. Hubungan antara M s_Karyawan dengan Q&A kemudian memasukkan ID_Karyawan pada Q&A
Ms_Karyawan ( ID_Karyawan,
Username, password, Nm_Karyawan, Jabatan, alamat )
Primary Key ID_Karyawan
Q&A ( ID_Q&A, ID_Karyawan, ID_Pelanggan, Tanya_Q&A ) Primary Key ID_Q&A
Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
h. Hubungan antara M s_Karyawan dengan M s_Promosi kemudian memasukkan ID_Karyawan pada Ms_Promosi
Ms_Karyawan ( ID_Karyawan,
Username, password, Nm_Karyawan, Jabatan, alamat )
Primary Key ID_Karyawan
Ms_Promosi ( Kd_Promosi,
ID_Karyawan, Barang, Paket, Tgl_Promosi )
Primary Key Kd_Promosi Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
i. Hubungan antara M s_Karyawan dengan M s_Pemeliharaan kemudian memasukkan ID_Karyawan pada M s_Pemeliharaan Ms_Karyawan ( ID_Karyawan,
Username, password,
Ms_Pemeliharaan ( Kd_Pemeliharaan, ID_Karyawan,
Nm_Karyawan, Jabatan, alamat ) Primary Key ID_Karyawan
Tgl_Pemeliharaan )
Primary Key Kd_Pemeliharaan Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
j. Hubungan antara M s_Promosi dengan M s_Pelanggan kemudian memasukkan Kd_Promosi pada M s_Pelanggan
Ms_Promosi ( Kd_Promosi,
ID_Karyawan, Barang, Paket, Tgl_Promosi )
Primary Key Kd_Promosi
Ms_Pelanggan ( ID_Pelanggan, Kd_Daftar, Kd_Promosi, username,
password, Nm_Perusahaan, Alm_Perusahaan, Email )
Primary Key ID_Pelanggan Foreign Key Kd_Promosi References M s_Promosi ( Kd_Promosi )
k. Hubungan antara M s_Karyawan dengan TrPembelian kemudian memasukkan ID_Karyawan pada TrPembelian
Ms_Karyawan ( ID_Karyawan,
Username, password, Nm_Karyawan, Jabatan, alamat )
Primary Key ID_Karyawan
TrPembelian ( Kd_Pembelian, ID_Karyawan, Tgl_Pembelian ) Primary Key Kd_Pembelian Foreign Key ID_Karyawan
References M s_Karyawan ( ID_Karyawan )
4. Tipe relasi one-to-one binary
a. M engirimkan Kd_Pemesanan pada TrPemesanan kepada TrPenjualan
TrPemesanan ( Kd_Pemesanan,
ID_Pelanggan, ID_Karyawan,
Tgl_Pemesanan, Total_Harga, Ket )
Primary Key Kd_Pemesanan Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
Foreign Key ID_Pelanggan References M s_Pelanggan ( ID_Pelanggan ) TrPenjualan ( Kd_Penjualan, Kd_Pemesanan, ID_Karyawan, Tgl_Penjualan, Diskon, Total_Harga )
Primary Key Kd_Penjualan Foreign Key Kd_Pemesanan References TrPemesanan ( TrPemesanan )
Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
b. M engirimkan Kd_Penjualan pada TrPenjualan kepada Ms_Pengiriman TrPenjualan ( Kd_Penjualan, Kd_Pemesanan, ID_Karyawan, Tgl_Penjualan, Diskon, Ms_Pengiriman ( ID_Pengiriman, Kd_Penjualan, ID_Karyawan, Tgl_Pengiriman, Karyawan )
Total_Harga )
Primary Key Kd_Penjualan Foreign Key Kd_Pemesanan References TrPemesanan ( TrPemesanan )
Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
Primary Key ID_Pengiriman Foreign Key Kd_Penjualan References TrPenjualan ( Kd_Penjualan )
Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
c. M engirimkan Kd_Pembelian pada TrPembelian Kepada Ms_Pengiriman
TrPembelian ( Kd_Pembelian, ID_Karyawan, Tgl_Pembelian ) Primary Key Kd_Pembelian Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan ) Ms_Pengiriman ( ID_Pengiriman, Kd_Penjualan, ID_Karyawan, Kd_Pembelian, Tgl_Pengiriman, Karyawan )
Primary Key ID_Pengiriman Foreign Key Kd_Penjualan References TrPenjualan ( Kd_Penjualan )
Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
References TrPembelian (Kd_Pembelian )
5. Tipe relasi many-to-many binary
a. M enggabungkan Kd_Pemesanan pada TrPemesanan dengan Kd_Barang pada M s_Barang ke dalam entitas DetailPemesananBarang
TrPemesanan ( Kd_Pemesanan,
ID_Pelanggan, ID_Karyawan,
Tgl_Pemesanan, Total_Harga, Ket ) Primary Key Kd_Pemesanan
Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
Foreign Key ID_Pelanggan References M s_Pelanggan ( ID_Pelanggan )
Ms_Barang ( Kd_Barang,
Nm_Barang, Jenis_Barang, Definisi, Harga, Tgl_M asuk, Tgl_Keluar, Stok_Barang )
Primary Key Kd_Barang
DetailPemesananBarang ( Kd_Pemesanan, Kd_Barang, Tgl_Pemesanan, Harga, Total_Harga )
Primary Key Kd_Pemesanan, Kd_Barang
Foreign Kd_Barang References M s_Barang ( Kd_Barang )
b. M enggabungkan Kd_Pemesanan pada TrPemesanan dengan ID_Barang pada M s_Jasa ke dalam entitas DetailPemesananJasa TrPemesanan ( Kd_Pemesanan,
ID_Pelanggan, ID_Karyawan,
Tgl_Pemesanan, Total_Harga, Ket ) Primary Key Kd_Pemesanan
Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
Foreign Key ID_Pelanggan References M s_Pelanggan ( ID_Pelanggan )
Ms_Jasa ( ID_Jasa, Jenis_Jasa, Paket, Harga )
Primary Key ID_Jasa
DetailPemesananJasa ( Kd_Pemesanan, ID_Jasa, T gl_Pemesanan, Harga, Total_Harga )
Primary Key Kd_Pemesanan, ID_Jasa
Foreign Key Kd_Pemesanan References TrPemesanan ( Kd_Pemesanan ) Foreign Key ID_Jasa References M s_Jasa ( ID_Jasa )
c. M enggabungkan Kd_Pembelian pada TrPembelian dengan ID_Barang pada M s_Barang ke dalam entitas DetailPembelianBarang
TrPembelian ( Kd_Pembelian, ID_Karyawan, Tgl_Pembelian ) Primary Key Kd_Pembelian Foreign Key ID_Karyawan References M s_Karyawan ( ID_Karyawan )
Ms_Barang ( Kd_Barang, Nm_Barang, Jenis_Barang, Definisi, Harga, Tgl_M asuk, Tgl_Keluar, Stok_Barang )
Primary Key Kd_Barang
4.3.3 Validasi relasi dengan menggunakan normalisasi DaftarPelanggan
UNF = Kd_Daftar + Tgl_Daftar 1NF = Kd_Daftar + Tgl_Daftar 2NF = Kd_Daftar + Tgl_Daftar 3NF = Kd_Daftar + Tgl_Daftar
DetailPembelianBarang ( Kd_Pembelian, Kd_Barang, T gl_Pembelian, JumBeli, Harga, Total_Harga )
Primary Key Kd_Pembelian, Kd_Barang
Foreign Key Kd_Pembelian References TrPembelian ( Kd_Pembelian ) Foreign Key Kd_Barang References M s_Barang ( Kd_Barang )
Ms_Pelanggan
UNF = ID_Pelanggan + Kd_Daftar + Kd_Promosi + username + password + Nm_Perusahaan + Alm_Perusahaan + Email
1NF
Ms_Pelanggan = ID_Pelanggan + Kd_Daftar + Kd_Promosi + Nm_Perusahaan + Alm_Perusahaan + Email
DetailLoginP = Kd_DetailLoginP + ID_Pelanggan + username + password
2NF
Sudah memenuhi aturan 2 NF 3NF
Sudah memenuhi aturan normalisasi 3 NF.
Ms_Karyawan
UNF = ID_Karyawan + Username + Password + Nm_Karyawan + Jabatan + alamat
1NF
Ms_Karyawan = ID_Karyawan + Nm_Karyawan + Jabatan + alamat DetailLoginK = Kd_DetailLoginK + ID_Karyawan + username + password
2NF
Sudah memenuhi aturan 2 NF 3NF
TrPemesanan
UNF = Kd_Pemesanan + ID_Pelanggan + ID_Karyawan + Tgl_Pemesanan + Total_Harga + Ket
1NF
TrPemesanan = Kd_Pemesanan + ID_Pelanggan + ID_Karyawan + Tgl_Pemesanan + Ket
2NF
TrHeaderPemesanan = Kd_Pemesanan + ID_Pelanggan + ID_Karyawan + Tgl_Pemesanan
TrDetailPemesanan =Kd_Pemesanan + Ket 3NF
Sudah memenuhi aturan 3 NF
TrPembelian
UNF = Kd_Pembelian + ID_Karyawan + Tgl_Pembelian 1NF
Sudah memenuhi aturan 1 NF 2NF
Sudah memenuhi aturan 2 NF 3NF
Q&A
UNF = ID_Q&A + ID_Karyawan + ID_Pelanggan + Tanya_Q&A 1NF
Sudah memenuhi aturan 1 NF 2NF
Sudah memenuhi aturan 2 NF 3NF
Sudah memenuhi aturan 3 NF
TrPenjualan
UNF = Kd_Penjualan + Kd_Pemesanan + ID_Karyawan + Tgl_Penjualan + Diskon + Total_Harga
1NF
TrPenjualan = Kd_Penjualan + Kd_Pemesanan + ID_Karyawan + Tgl_Penjualan + Diskon
2NF
TrHeaderPenjualan = Kd_Penjualan + Kd_Penjualan + ID_Karyawan + Tgl_Penjualan
TrDetailPenjualan = Kd_Penjualan + diskon 3NF
Ms_Pengiriman
UNF = ID_Pengiriman + Kd_Penjualan + ID_Karyawan + Kd_Pembelian + Tgl_Pengiriman
1NF
Sudah memenuhi aturan 1 NF 2NF
Sudah memenuhi aturan 2 NF 3NF
Sudah memenuhi aturan 3 NF
Ms_Promosi
UNF = Kd_Promosi + ID_Karyawan + Barang + Paket + Tgl_Promosi 1NF
Ms_Promosi = Kd_Promosi + ID_Karyawan + Tgl_Promosi Jenis_Promosi = Kd_Promosi + Barang + Paket
2NF
Sudah memenuhi aturan 2 NF 3NF
Ms_Pemeliharaan
UNF = Kd_Pemeliharaan + ID_Karyawan + Tgl_Pemeliharaan 1NF
Ms_Pemeliharaan = @Kd_Pemeliharaan + ID_Karyawan + Tgl_Pemeliharaan
Ms_Jasa
UNF = ID_Jasa + Jenis_Jasa + Paket + Harga 1NF
Ms_Jasa = ID_Jasa + Jenis_Jasa + Paket 2NF
Sudah memenuhi aturan 2 NF 3NF
Sudah memenuhi aturan 3 NF
DetailPemesananBarang
UNF = + Kd_Barang Kd_Pemesanan + Tgl_Pemesanan + Harga + Total_Harga
1NF
DetailPemesananBarang = Kd_Pemesanan + Kd_Barang + Tgl_Pemesanan
2NF
Sudah memenuhi aturan 2 NF 3NF
DetailPemesananBarang=
Ms_Barang = Kd_Barang + Nm_Barang + Jenis_Barang + Definisi + Tgl_M asuk + Tgl_Keluar + Stok_Barang
Ms_Barang
UNF = Kd_Barang + Nm_Barang + Jenis_Barang + Definisi + Tgl_M asuk + Tgl_Keluar + Stok_Barang
1NF
M S Barang= Kd_Barang + Nm_Barang + Jenis_Barang + Definisi + Tgl_M asuk + Tgl_Keluar + Stok_Barang
2NF
M S Barang= Kd_Barang + Nm_Barang + Jenis_Barang + Definisi + Tgl_M asuk + Tgl_Keluar + Stok_Barang
3NF
Ms_Barang = Kd_Barang + Nm_Barang + Jenis_Barang + Definisi DetailBarang = Kd_Barang + Tgl_M asuk + Tgl_Keluar + Stok_Barang
DetailPembelianBarang
UNF = Kd_Pembelian + Kd_Barang + JumBeli + Harga + Total_Harga
1NF
DetailPembelianBarang = Kd_Pembelian + Kd_Barang 2NF
Sudah memenuhi aturan 2 NF 3NF
Sudah memenuhi aturan 3 NF
JawabanQ&A
UNF = ID_Q&A + JawabanPelanggan 1NF
Sudah memenuhi aturan 1 NF 2NF
Sudah memenuhi aturan 2 NF 3NF
Sudah memenuhi aturan 3 NF
DetailPemesananJasa
UNF = Kd_Pemesanan + ID_Jasa + Tgl_Pemesanan + Harga + Total_Harga )
1NF
DetaiPemesananJasa = Kd_Pemesanan + ID_Jasa + Tgl_Pemesanan 2NF
Sudah memenuhi aturan 2 NF 3NF
TelpKaryawan
UNF = Kd_Karyawan + Telp_Karyawan 1NF
Sudah memenuhi aturan 1 NF 2NF
Sudah memenuhi aturan 2 NF 3NF
Sudah memenuhi aturan 3 NF
TelpPerusahaan
UNF = Kd_Pelanggan + Telp_Perusahaan 1NF
Sudah memenuhi aturan 1 NF 2NF
Sudah memenuhi aturan 2 NF 3NF
Ms_Pelanggan PK ID_Pelanggan Nm_Perusahaan Alm_Perusahaan Email FK2 Kd_Daf tar FK1 Kd_Promos i Daft arPelanggan PK Kd_Daftar Tgl_Daf tar Ms_Kary awan P K ID_Karyawan Nm_karyawan J abat an Alamat Det ailLoginK PK,FK1 ID_Karyawan username pas sword DetailLoginP PK,FK1 ID_Pelanggan username pas sword TrHeaderPemesanan PK Kd_Pemesanan FK2 ID_Pelanggan FK1 ID_Karyawan Tgl_Pemes anan TrDet ailPemesanan PK,FK1 Kd_Pemesanan k et TrPembelian PK Kd_Pem beli an FK1 ID_Kary awan Tgl_Pembelian Q&A PK ID_Q&A tanya_Q& A FK1 ID_Pelanggan FK2 ID_Kary awan TrHeaderPenjualan PK Kd_P enjualan FK2 Kd_Pemes anan FK1 ID_Kary awan Tgl_Penjualan TrDetailPenjualan PK,FK1 Kd_Penj ualan dis kon MsPengiriman PK ID_Pengiriman FK1 Kd_Penjualan FK2 Kd_Pembelian FK3 ID_Kary awan Tgl_Pengiriman MsPromos i PK Kd_Promosi FK1 ID_Karyawan Tgl_Promosi J enis_Promosi PK,FK1 Kd_Promosi barang paket Ms_Pemeliharaan PK Kd_P emeli haraan FK1 ID_Kary awan Tgl_Pemeliharaan Ms_Barang PK Kd_Barang Nm_Barang Jenis _B arang definisi DetailBarang PK,FK1 Kd_Barang Tgl_Masuk Tgl_Keluar Stok_Barang Ms_Jasa PK ID_Jasa Jenis_Jasa pak et DetailPemes ananBarang PK,FK2 Kd_Barang PK,FK1 Kd_Pem esanan Tgl_Pemes anan DetailPembelianBarang PK, FK2 Kd_Pembelian PK, FK1 Kd_Barang J awabanQ&A PK, FK1 I D_Q&A J awabanPelanggan DetailPemesananJasa PK,FK2 Kd_Pem esanan PK,FK1 ID_Jasa Tgl_Pemes anan TelpKaryawan PK Telp_Karyawan FK1 I D_Karyawan TelpPerus ahaan PK Telp_Perusahaan FK 1 I D_Pel anggan
4.3.4 Alur Transaksi yang Terjadi
Gambar 4.8 Validasi Transaksi (Model Logikal)
Adapun beberapa transaksi yang terjadi adalah sebagai berikut : a. M enentukan jenis promosi
b. M enjawab pertanyaan
d. Pelanggan melihat promosi yang ada
e. Karyawan mempublish promosi ke pelanggan f. Karyawan menjawab pertanyaan
g. Setiap karyawan mempunyai nomor telepon h. Karyawan mengupdate proses penjualan
i. Karyawan melakukan login
j. Karyawan melakukan pengiriman
k. Bagian pembelian melakukan pengiriman
l. Detail pemesanan jasa
m. Pengiriman berdasarkan bagian penjualan n. Detail barang yang ada
o. Detail penjualan dan diskon p. Detail pemesanan barang q. Detail pemesanan jasa r. Detail pembelian barang s. Detail pemesanan barang
t. Pembelian barang oleh karyawan
u. Karyawan melakukan pemeliharan v. Karyawan memproses pemesanan w. Karyawan memproses pembelian x. Proses pendaftaran pelanggan y. Detail pelanggan
z. Pelanggan mempunyai nomor telp perusahaan aa. Detail barang yang dipesan
bb. Pelanggan melakukan pemesanan
cc. Penjualan berdasarkan pemesanan oleh pelanggan.
4.3.5 Memeriksa Integritas Constraint DaftarPelanggan ( Kd_Daftar, Tgl_Daftar ) Primary Key Kd_Daftar
Ms_Pengiriman ( ID_Pengiriman, Kd_Penjualan, ID_Karyawan, Kd_Pembelian,
Tgl_Pengiriman, Karyawan )
Primary Key ID_Pengiriman
Foreign Key Kd_Penjualan References Ms_Pengiriman ( Kd_Penjualan )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key ID_Karyawan References Ms_Karyawan ( ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key Kd_Pembelian References TrPembelian ( Kd_Pembelian )
ON UPDATE CASCADE ON DELETE NO ACTION
TrPembelian ( Kd_Pembelian, ID_Karyawan, Tgl_Pembelian ) Primary Key Kd_Pembelian
Foreign Key ID_Karyawan References Ms_Karyawan ( ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
Tgl_Keluar, Stok_Barang )
Primary Key Kd_Barang
TrHeaderPemesanan ( Kd_Pemesanan, ID_Pelanggan, ID_Karyawan,
Tgl_Pemesanan )
Primary Key Kd_Pemesanan
Foreign Key ID_Karyawan References Ms_Karyawan ( ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key ID_PelangganReferences M s_Pelanggan ( ID_Pelanggan )
ON UPDATE CASCADE ON DELETE CASCADE
TrDetailPemesanan ( Kd_Pemesanan, Ket ) Primary Key Kd_Pemesanan
Foreign Key Kd_Pemesanan References TrHeaderPemesanan ( Kd_Pemesanan )
ON UPDATE CASCADE ON DELETE NO ACTION
Ms_Jasa ( ID_Jasa, Jenis_Jasa, Paket ) Primary Key ID_Jasa
Ms_Pelanggan ( ID_Pelanggan, Kd_Daftar, Kd_Promosi, username, password,
Nm_Perusahaan, Alm_Perusahaan, Email )
Primary Key ID_Pelanggan
ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key Kd_Daftar References DaftarPelanggan ( Kd_Daftar )
ON UPDATE CASCADE ON DELETE NO ACTION
TrHeaderPenjualan ( Kd_Penjualan, Kd_Pemesanan, ID_Karyawan, Tgl_Penjualan
)
Primary Key Kd_Penjualan
Foreign Key Kd_Pemesanan References TrPemesanan ( TrPemesanan )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key ID_Karyawan References Ms_Karyawan ( ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
TrDetailPenjualan ( Kd_Penjualan, Kd_Penjualan, Diskon ) Primary Key Kd_Penjualan
Foreign Key KdPenjualan References TrHeaderPenjualan ( KdPenjualan )
ON UPDATE CASCADE ON DELETE NO ACTION
Ms_Promosi ( Kd_Promosi, ID_Karyawan, Barang, Paket, Tgl_Promosi ) Primary Key Kd_Promosi
Foreign Key ID_Karyawan References Ms_Karyawan ( ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
Primary Key Kd_Promosi
Foreign Key Kd_Promosi References M s_Promosi ( Kd_Promosi )
ON UPDATE CASCADE ON DELETE CASCADE
TelpPerusahaan (Telp_Perusahaan, ID_Pelanggan ) Primary_Key Telp_Perusahaan
Foreign Key ID_Pelanggan References M s_Pelanggan ( ID_Pelanggan )
ON UPDATE CASCADE ON DELETE NO ACTION
DetailLoginP ( Username, Password, ID_Pelanggan ) Primary Key ID_Pelanggan
Foreign Key ID_Pelanggan References M s_Pelanggan ( ID_Pelanggan )
ON UPDATE CASCADE ON DELETE NO ACTION
JawabanQ&A ( ID_Q&A, Jawaban_Pelanggan ) Primary Key ID_Q&A
Foreign Key ID_Q&A References Q&A ( ID_Q&A )
ON UPDATE NO ACTION ON DELETE CASCADE
Q&A( ID_Q&A, ID_Pelanggan, ID_Karyawan, Tanya_Q&A ) Primary Key ID_Q&A
Foreign Key ID_Pelanggan References M s_Pelanggan ( ID_Pelanggan )
ON UPDATE CASCADE ON DELETE NO ACTION
ON UPDATE CASCADE ON DELETE CASCADE
TelpKaryawan ( Telp_Karyawan, ID_Karyawan ) Primary Key Telp_Karyawan
Foreign Key ID_Karyawan References Ms_Karyawan ( ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
Ms_Karyawan ( ID_Karyawan, Nama, Alamat, Jabatan ) Primary Key ID_Karyawan
DetailPemesananBarang ( Kd_Pemesanan, Kd_barang, Tgl_Pemesanan ) Primary Key Kd_Pemesanan, Kd_Barang
Foreign Key Kd_Pemesanan References TrHeaderPemesanan ( Kd_Pemesanan )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key Kd_Barang References Ms_Barang ( Kd_Barang )
ON UPDATE CASCADE ON DELETE CASCADE
DetailLoginK ( Username, Password, ID_Karyawan ) Primary Key ID_Karyawan
Foreign Key ID_Karyawan References Ms_Karyawan ( ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
Primary Key Kd_Pemeliharaan
Foreign Key ID_Karyawan References Ms_Karyawan ( ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
DetailPemesananJasa ( Kd_Pemesanan, ID_Jasa, Tgl_Pemesanan )
Primary Key Kd_HeaderPemesanan, ID_Jasa
Foreign Key Kd_Pemesanan References TrHeaderPemesanan ( Kd_Pemesanan )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key ID_Jasa References M s_Jasa ( ID_Jasa )
ON UPDATE CASCADE ON DELETE CASCADE
DetailPembelianBarang ( Kd_Pembelian, Kd_Barang ) Primary Key Kd_Pembelian, Kd_Barang
Foreign Key Kd_Pembelian References TrPembelian ( Kd_Pembelian )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key Kd_Barang References Ms_Barang ( Kd_Barang )
ON UPDATE CASCADE ON DELETE CASCADE
DetailBarang ( Tgl_M asuk, Tgl_Keluar, StokBarang, Kd_Barang ) Primary Key Kd_Barang
Foreign Key Kd_Barang References Ms_Barang ( Kd_Barang )
4.4 Perancangan Database Fisikal
4.4.1 Pemilihan DBMS (Database Management System)
Pemilihan DBM S merupakan langkah untuk menentukan DBM S yang akan digunakan oleh perusahaan. DBM S yang digunakan pada penulisan karya tulis ini adalah M YSQL.
Tabel 4.6 S pesifikasi DBMS MYS QL MYS QL
Processor Intel Pentium 4 1.66 MHz
M emory RAM : 128 MB (512 MB
diutamakan)
Virtual M emory : Initial size 50 M B, ukuran maksimal 400 M B
Hardisk Space 500 M B (diutamakan)
Platform Windows
Cost $ 0 (lisensi umum)
Pemenuhan ACID Ya
Feature Tables Relational tables
Feature Triggers Tidak mendukung
Feature Procedures M YSQL function
Feature Back up dan security
Tidak mendukung
Outer joins Left, Right
M ax table size 4 GB
4.4.2 Penerjemahan Model Data Logical Global Untuk Target DBMS
Perancangan basis data fisikal adalah proses menghasilkan penjelasan dari implementasi dari basis data pada secondary storage dan menjelaskan base relation, pengaturan file dan indeks yang digunakan untuk akses data, integrity constraints, serta ukuran keamanan.
Langkah-langkah dalam perancangan basis data fisikal adalah sebagai berikut :
4.4.2.1 Merancang Base Relation
Langkah ini bertujuan untuk memutuskan bagaimana merepresentasikan relasi dasar yang diidentifikasikan.
1. DaftarPelanggan
Domain Kd_Daftar Fixed length character string, length 5
Domain Tgl_Daftar Date
DaftarPelanggan (
Kd_Daftar Kd_Daftar NOT NULL
Tgl_Daftar Tgl_Daftar NOT NULL
);
2. Ms_Pengiriman
Domain ID_Pengiriman Fixed length character string, length 5 Domain Kd_Penjualan Fixed length character string, length 5 Domain ID_Karyawan Fixed length character string, length 5 Domain Kd_Pembelian Fixed length character string, length 5
Domain Tgl_Pengiriman Date
Domain Karyawan Fixed length Variable character
string, length 20
Ms_Pengiriman (
ID_Pengiriman ID_Pengiriman NOT NULL
Kd_Penjualan Kd_Penjualan NOT NULL
ID_Karyawan ID_Karyawan NOT NULL
Kd_Pembelian Kd_Pembelian NOT NULL
Tgl_Pengiriman Tgl_Pengiriman NOT NULL
Karyawan Nm_Karyawan NOT NULL
Primary Key ID_Pengiriman
Foreign Key Kd_Penjualan References Ms_Pengiriman (
Kd_Penjualan )
Foreign Key ID_Karyawan References Ms_Karyawan (
ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key Kd_Pembelian References TrPembelian (
Kd_Pembelian )
ON UPDATE CASCADE ON DELETE NO ACTION );
3. TrPembelian
Domain Kd_Pembelian Fixed length character string, length 5 Domain ID_Karyawan Fixed length character string, length 5 Domain Tgl_PembelianDate
TrPembelian (
Kd_Pembelian Kd_Pembelian NOT NULL
ID_Karyawan ID_Karyawan NOT NULL
Date Date NOT NULL
Primary Key Kd_Pembelian
Foreign Key ID_Karyawan References Ms_Karyawan (
ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE );
4. Ms_Barang
Domain Kd_Barang Fixed length character string, length 5
Domain Nm_Barang Fixed length Variable character string,
Domain Jenis_Barang Fixed length Variable character string,
length 10
Domain Definisi Fixed length Variable character string,
length 200
Ms_Barang (
Kd_Barang Kd_Barang NOT NULL
Nm_Barang Nm_Barang NOT NULL
Jenis_Barang Jenis_Barang NOT NULL
Definisi Definisi NOT NULL
Primary Key Kd_Barang
);
5. TrHeaderPemesanan
Domain Kd_Pemesanan Fixed length character string, length 5 Domain ID_Pelanggan Fixed length character string, length 5 Domain ID_Karyawan Fixed length character string, length 5 Domain Tgl_Pemesanan Date
TrHeaderPemesanan (
Kd_Pemesanan Kd_Pemesanan NOT NULL
ID_Pelanggan ID_Pelanggan NOT NULL
ID_Karyawan ID_Karyawan NOT NULL
Tgl_Pemesanan Tgl_Pemesanan NOT NULL
Foreign Key ID_Karyawan References Ms_Karyawan (
ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key ID_PelangganReferences Ms_Pelanggan (
ID_Pelanggan )
ON UPDATE CASCADE ON DELETE CASCADE );
6. TrDetailPemesanan
Domain Kd_Pemesanan Fixed length character string, length
5
Domain Ket Fixed length Variable character
string, length 50
TrDetailPemesanan (
Kd_Pemesanan Kd_Pemesanan NOT NULL
Ket Ket NOT NULL
Primary Key Kd_Pemesanan
Foreign Key Kd_Pemesanan References TrHeaderPemesanan (
Kd_Pemesanan )
ON UPDATE CASCADE ON DELETE NO ACTION );
7. Ms_Jasa
Domain Jenis_Jasa Fixed length Variable character string,
length 20
Domain Paket Fixed length Variable character string,
length 20
Ms_Jasa (
ID_Jasa ID_Jasa NOT NULL
Jenis_Jasa Jenis_Jasa NOT NULL
Paket Paket NOT NULL
Primary Key ID_Jasa
);
8. Ms_Pelanggan
Domain ID_Pelanggan Fixed length character string, length 5
Domain Kd_Daftar Fixed length character string, length 5
Domain Kd_Promosi Fixed length character string, length 5 Domain Nm_Perusahaan Fixed length Variable character string,
length 50
Domain Alm_Perusahaan Fixed length Variable character string, length 100
Domain Email Fixed length Variable character
string, length 40
Ms_Pelanggan (
ID_Pelanggan ID_Pelanggan NOT NULL
Kd_Daftar Kd_Daftar NOT NULL
Nm_Perusahaan Nm_Perusahaan NOT NULL
Alm_Perusahaan Alm_Perusahaan NOT NULL
Email Email NOT NULL
Primary Key ID_Pelanggan
Foreign Key Kd_Promosi References Ms_Promosi (
Kd_Promosi )
ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key Kd_Daftar References DaftarPelanggan (
Kd_Daftar )
ON UPDATE CASCADE ON DELETE NO ACTION );
9. TrHeaderPenjualan
Domain Kd_Penjualan Fixed length character string, length
5
Domain Kd_Pemesanan Fixed length character string, length
5
Domain ID_Karyawan Fixed length character string, length
5
Domain Tgl_Penjualan Date
TrHeaderPenjualan (
Kd_Penjualan Kd_Penjualan NOT NULL
Kd_Pemesanan Kd_Pemesanan NOT NULL
Tgl_Penjualan Tgl_Penjualan NOT NULL
Primary Key Kd_Penjualan
Foreign Key Kd_Pemesanan References TrPemesanan (
TrPemesanan )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key ID_Karyawan References Ms_Karyawan (
ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE );
10. TrDetailPenjualan
Domain Kd_Penjualan Fixed length character string,
length 5
Domain Diskon Numeric
TrDetailPenjualan (
Kd_Penjualan Kd_Penjualan NOT NULL
Diskon Diskon NOT NULL
)
Primary Key Kd_Penjualan
Foreign Key Kd_Penjualan References TrHeaderPenjualan (
KdPenjualan )
ON UPDATE CASCADE ON DELETE NO ACTION );
11. Ms_Promosi
Domain Kd_Promosi Fixed length character string, length
5
Domain ID_Karyawan Fixed length character string, length
5
Domain Tgl_Promosi Date
Ms_Promosi (
Kd_Promosi Kd_Promosi NOT NULL
ID_Karyawan ID_Karyawan NOT NULL
Tgl_Promosi Tgl_Promosi NOT NULL
Primary Key Kd_Promosi
Foreign Key ID_Karyawan References Ms_Karyawan (
ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE );
12. Jenis_Promosi
Domain Barang Fixed length Variable character string,
length 50
Domain Paket Fixed length Variable character string,
length 50
Domain Kd_Promosi Fixed length character string, length 5
Jenis_Promosi (
Paket Paket NOT NULL
Kd_Promosi Kd_Promosi NOT NULL
Primary Key Kd_Promosi
Foreign Key Kd_Promosi References Ms_Promosi (
Kd_Promosi )
ON UPDATE CASCADE ON DELETE CASCADE );
13. TelpPerusahaan
Domain Telp_Perusahaan Fixed length Variable character
string, length 12
Domain ID_Pelanggan Fixed length character string, length
5
TelpPerusahaan (
Telp_Perusahaan Telp_Perusahaan NOT NULL
ID_Pelanggan ID_Pelanggan NOT NULL)
Primary_Key Telp_Perusahaan
Foreign Key ID_Pelanggan References Ms_Pelanggan (
ID_Pelanggan )
ON UPDATE CASCADE ON DELETE NO ACTION );
14. DetailLoginP
Username Fixed length character string, length 15
Password Fixed length character string, length 10
DetailLoginP (
Username Username NOT NULL
Password Password NOT NULL
ID_Pelanggan ID_Pelanggan NOT NULL
Primary Key ID_Pelanggan
Foreign Key ID_Pelanggan References Ms_Pelanggan (
ID_Pelanggan )
ON UPDATE CASCADE ON DELETE NO ACTION );
15. JawabanQ&A
Domain ID_Q&A Fixed length character string, length
5
Domain Jawaban_Pelanggan Fixed length Variable character
string, length 200
JawabanQ&A(
ID_Q&A ID_Q&A NOT NULL
Jawaban_Pelanggan Jawaban_Pelanggan NOT NULL
Primary Key ID_Q&A
Foreign Key ID_Q&A References FAQ ( ID_Q&A )
ON UPDATE NO ACTION ON DELETE CASCADE );
16. Q&A
Domain ID_Q&A Fixed length character string, length
5
Domain ID_Pelanggan Fixed length character string, length
5
Domain ID_Karyawan Fixed length character string, length
5
Domain Tanya_Q&A Fixed length Variable
character string, length 200
Q&A (
ID_Q&A ID_Q&A NOT NULL
ID_Pelanggan ID_Pelanggan NOT NULL
ID_Karyawan ID_Karyawan NOT NULL
Tanya_Q&A Tanya_Q&A NOT NULL
Primary Key ID_Q&A
Foreign Key ID_Pelanggan References Ms_Pelanggan (
ID_Pelanggan )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key ID_Karyawan References Ms_Karyawan (
ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE
17. TelpKaryawan
Domain Telp_Karyawan Fixed length Variable character
string, length 12
Domain ID_Karyawan Fixed length character string, length
5
TelpKaryawan (
Telp_Karyawan Telp_Karyawan NOT NULL
ID_Karyawan ID_Karyawan NOT NULL
Primary Key Telp_Karyawan
Foreign Key ID_Karyawan References Ms_Karyawan (
ID_Karyawan ) );
18. Ms_Karyawan
Domain ID_Karyawan Fixed length character string, length
5
Domain Nama Fixed length Variable character
string, length 20
Domain Alamat Fixed length Variable character
string, length 100
Domain Jabatan Fixed length Variable character
string, length 10
Ms_Karyawan (
Nama Nm_Karyawan NOT NULL
Alamat Alm_Karyawan NOT NULL
Jabatan Jabatan NOT NULL
Primary Key ID_Karyawan );
19. DetailPemesananBarang
Domain Kd_Pemesanan Fixed length character string, length
5
Domain Kd_Barang Fixed length character string, length
5
Domain Tgl_Pemesanan Date
DetailPemesananBarang (
Kd_Pemesanan Kd_Pemesanan NOT NULL
Kd_Barang Kd_Barang NOT NULL
Tgl_Pemesanan Tgl_Pemesanan NOT NULL
Primary Key Kd_Pemesanan, Kd_Barang
Foreign Key Kd_Pemesanan References TrHeaderPemesanan (
Kd_Pemesanan )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key Kd_Barang References Ms_Barang ( Kd_Barang )
ON UPDATE CASCADE ON DELETE CASCADE );
20. DetailLoginK
Password Fixed length character string, length 10
ID_Karyawan Fixed length character string, length 5
DetailLoginK (
Kd_DetailLoginK Kd_DetailLoginK NOT NULL
Username Username NOT NULL
Password Password NOT NULL
ID_Karyawan ID_Karyawan NOT NULL
Primary Key ID_Karyawan
Foreign Key ID_Karyawan References Ms_Karyawan (
ID_Karyawan )
ON UPDATE CASCADE ON DELETE CASCADE );
21. DetailPemesananJasa
Domain Kd_Pemesanan Fixed length character string, length
5
Domain ID_Jasa Fixed length character string, length
5
Domain Tgl_Pemesanan Date
DetailPemesananJasa (
Kd_Pemesanan Kd_Pemesanan NOT NULL
ID_Jasa ID_Jasa NOT NULL
Tgl_Pemesanan Tgl_Pemesanan NOT NULL
Foreign Key Kd_Pemesanan References TrHeaderPemesanan (
Kd_Pemesanan )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key ID_Jasa References M s_Jasa ( ID_Jasa )
ON UPDATE CASCADE ON DELETE CASCADE );
22. DetailPembelianBarang
Domain Kd_Pembelian Fixed length character string, length
5
Domain Kd_Barang Fixed length character string, length
5
DetailPembelianBarang (
Kd_Pembelian Kd_Pembelian NOT NULL
Kd_Barang Kd_Barang NOT NULL
Primary Key Kd_Pembelian, Kd_Barang
Foreign Key Kd_Pembelian References TrPembelian (
Kd_Pembelian )
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key Kd_Barang References Ms_Barang ( Kd_Barang )
ON UPDATE CASCADE ON DELETE CASCADE );
23. DetailBarang
Domain Tgl_M asuk Date
Domain Tgl_Keluar Date
Domain StokBarang Int
Domain Kd_Barang Fixed length character string, length
5
DetailBarang (
Tgl_M asuk Tgl_M asuk NOT NULL
Tgl_Keluar Tgl_Keluar NOT NULL
StokBarang StokBarang NOT NULL
Kd_Barang Kd_Barang NOT NULL
Primary Key Kd_Barang
Foreign Key Kd_Barang References Ms_Barang ( Kd_Barang )
ON UPDATE CASCADE ON DELETE CASCADE );
24. Ms_Pemeliharaan
Domain Kd_Pemeliharaan Fixed length character string, length
5
Domain Tgl_Pemeliharaan Date
Ms_Pemeliharaan (
_Pemeliharaan Kd_Pemeliharaan NOT NULL
Tgl_Pemeliharaan Tgl_Pemeliharaan NOT NULL
4.4.2.2 Merepresentasi Desain dari Data yang Diturunkan
Tujuan dari langkah ini untuk menentukan bagaimana merepresentasikan beberapa data yang diturunkan kemudian data tersebut digunakan dalam model data logikal global pada target DBM S, namun tidak ditemukan data yang dapat diturunkan.
4.4.2.3 Mendesain enterprise constraints
Tujuan dari langkah ini untuk mendesain enterprise
constraints untuk target DBM S. Beberapa constraints yang
ada sebagai berikut :
a) Tgl_Pemesanan tidak boleh lebih besar dari T gl_Penjualan
CONSTRAINT “Tgl_Pemesanan Error” CHECK ( NOT EXIS T(
S ELECT Kd_Penjualan FROM TrHeaderPenjualan
WHERE Tgl_Pemesanan >
Tgl_Penjualan)) b) Definisi tidak boleh kosong
CONSTRAINT “Definisi must be filled” CHECK ( NOT EXIS T(
S ELECT Kd_Barang
FROM M s_Barang WHERE Definisi == “”))
c) Tgl_M asuk barang harus lebih kecil dari Tgl_Keluar barang
CONSTRAINT “Tgl_Keluar invalid ” CHECK ( NOT EXIS T(
S ELECT Kd_Detailbarang FROM Detailbarang
WHERE Tgl_M asuk < Tgl_Keluar))
4.4.2.4 Mendesain Representasi Fisikal
Tujuan dari langkah ini adalah memaksimalkan kinerja organisasi file untuk di simpan pada base relation dan index yang dibutuhkan agar performanya diterima dengan baik.
M engetahui penting nya kumpulan sistem maka perlunya peningkatan performa, data base fisikal harus mengetahuin 4 dasar perangkat keras yang berinteraksi dan mempengaruhi performa sistem, antara lain sebagai berikut : 1. Main Memory
2. CPU 3. Disk I/O 4. Network
4.4.2.4.1 Menganalisa Transaksi Tabel 4.7 Analisa Transaksi
Transaksi R I U D Ket Jenis_Promosi X X X X A Ms_Promosi X X X X B DaftarPelanggan X X X C TelpPerusahaan X X X D DetailLoginP X X X E JawabanQ&A X X X F Q&A X X X G Ms_Pelanggan X X X H TelpKaryawan X I Ms_karyawan X X X J TrPembelian X K DetailPemesananBarang X L DetailLoginK X X X M Ms_Pengiriman X N Ms_Pemeliharaan X O Ms_Jasa X X X X P DetailPemesananJasa X Q DetailPembelianBarang X R DetailBarang X S
Keterangan :
A. M enampung, menghapus, menampilkan dan mengubah data Jenis_Promosi
B. M enampung, menghapus, menampilkan dan mengubah data Ms_Promosi
C. M enampung, menampilkan dan mengubah data DaftarPelanggan
D. M enampung, menampilkan dan mengubah data TelpPerusahaan
E. M enampung, menampilkan dan mengubah data DetailLoginP
F. M enampung, menampilkan dan mengubah data JawabanQ&A
G. M enampung, menampilkan dan mengubah data Q&A H. M enampung, menampilkan dan mengubah data
Ms_Pelanggan
I. M enampilkan data Telp_Karyawan
MsBarang X X X X T
TrHeaderPemesanan X U
TrDetailPemesanan X X X V
TrheaderPenjualan X W
J. M enampung, menampilkan dan mengubah data Ms_Karyawan
K. M enampilkan data TrPembelian
L. M enampilkan data DetailPemesananBarang M . M enampung, menampilkan dan mengubah data
DetailLoginK
N. M enampilkan data M s_Pengiriman O. M enampilkan data M s_Pemeliharaan
P. M enampung, menghapus, menampilkan dan mengubah data Ms_Jasa
Q. M enampilkan data DetailPemesananJasa R. M enampilkan data DetailPembelianBarang S. M enampilkan data DetailBarang
T. M enampung, menghapus, menampilkan dan mengubah data Ms_Barang
U. M enampilkan data TrheaderPemesanan
V. M enampung, menampilkan dan mengubah data TrDetailPemesanan
W. M enampilkan data TrHeaderPenjualan
X. M enampung, menampilkan dan mengubah data TrDetailPenjualan
4.4.2.4.2 Mendesain User View
Tujuan pada tahap merancang user view adalah untuk merancang user view yang diidentifikasi selama tahap pengumpulan kebutuhan dan analisis dari siklus hidup basis data. Rancangan user view untuk basis data ini adalah sebagai berikut :
a) Untuk Menampilkan Promosi yang di tawarkan
Create View ViewPromosi as Select mp.Kd_Promosi, mk.ID_Karyawan, mp.Tgl_Promosi, jp.Barang, jp.Paket, mp.Tgl_Promosi
From Ms_Promosi mp, Ms_Karyawan mk, Jenis_Promosi jp
Where mk.ID_Karyawan = mp.ID_Karyawan Mp.Kd_Promosi = jp.Kd_Promosi
b) Untuk Menampilkan Data Pelanggan
Create View ViewPelanggan as Select dp.Tgl_Daftar, dp.Kd_Daftar, ml.ID_Pelanggan, ml.Nm_Perusahaan as “Nama Perusahaan”, ml.Alm_Perusahaan as “Alamat Perusahaan”, ml.Email, tp.Telp_Perusahaan, dl.Username, dl.Password
From DaftarPelanggan dp, Ms_Pelanggan ml, TelpPerusahaan tp, DetailLoginP dl
mp.ID_Pelanggan = tp.ID_Pelanggan
dp.Kd_Daftar = mp.Kd_Daftar
c) Untuk Menampilkan data Karyawan
Create View ViewKaryawan as Select mk.ID_Karyawan, mk.Nm_Karyawan as “Nama Karyawan”, mk. Jabatan,
mk.Alamat, dk.Username, dk.Password, tk.Telp_Karyawan
From M s_Karyawan mk, DetailLoginK dk, TelpKaryawan tk
Where mk.ID_Karyawan = dk.ID_Karyawan
mk.ID_Karyawan = tk.ID_Karyawan
d) Untuk Menampilkan Pemesanan Barang yang dilakukan
Create View ViewPemesanan as Select th.Kd_Pemesanan, th.ID_Pelanggan, th.ID_Karyawan, th.Tgl_Pemesanan, td.Ket, db.Kd_Barang, dj.ID_Jasa
From TrHeaderPemesanan th, TrDetailPemesanan td, DetailPemesananBarang db, DetailPemesananJasa dj
Where th.Kd_Pemesanan = td.Kd_Pemesanan
th.Kd_Pemesanan = db.Kd_Pemesanan
e) Untuk Menampilkan Persediaan Barang
Create View ViewPersediaan as Select mb.Kd_barang, mb.Nm_Barang as “Nama Barang”, mb.Jenis_Barang, mb.definisi, db.T gl_M asuk, db.Tgl_Keluar, db.Stok_Barang
From Ms_Barang mb, Detail_Barang db Where mb.Kd_Barang = db.Kd_Barang
4.4.2.4.3 Memilih Indeks
Tujuan dari langkah ini adalah menentukan apakah penambahan indeks menunjang performa sistem. Indeks-indeks yang akan digunakan adalah :
Tabel 4.8 Indeks
Tabel Indeks Nama Indeks
DaftarPelanggan Kd_Daftar ( Primary )
Tgl_Daftar ( Secondary )
idxKd_Daftar idxT gl_Daftar
Ms_Pengiriman ID_Pengiriman ( Primary )
Tgl_Pengiriman ( Secondary )
idxID_Pengiriman idxT gl_Pengiriman
TrPembelian Kd_Pembelian ( Primary )
Tgl_Pembelian ( Secondary )
idxKd_Pembelian idxT gl_Pembelian
Ms_Barang Kd_Barang ( Primary )
Nm_Barang ( Secondary )
idxKd_Barang idxNm_Barang
Tgl_Pemesanan ( Secondary ) idxT gl_Pemesanan
TrDetailPemesanan Kd_Pemesanan idxKd_Pemesanan
Ms_Jasa ID_Jasa ( Primary )
Jenis_Jasa ( Secondary )
idxID_Jasa idxJenis_Jasa
Ms_Pelanggan ID_Pelanggan ( Primary )
Nm_Perusahaan ( Secondary )
idxID_Pelanggan idxNm_perusahaan
TrHeaderPenjualan Kd_Penjualan ( Primary )
Tgl_Penjualan ( Secondary )
idxKd_Penjualan idxT gl_Penjualan
TrDetailPenjualan Kd_Penjualan idxKd_DetailPenjualan
Ms_Promosi Kd_Promosi ( Primary )
Tgl_Promosi ( Secondary )
idxKd_Promosi idxT gl_Promosi
Jenis_Promosi Kd_Jenis idxKd_jenis
TelpPerusahaan Telp_Perusahaan idxTelp_Perusahaan
DetailLoginP Kd_DetailLoginP idxKd_DetailLoginP
JawabanQ&A ID_Q&A idxID_Q&A Q&A ID_Q&A idxID_Q&A
TelpKaryawan Telp_Karyawan idxTelp_Karyawan
Ms_karyawan ID_Karyawan ( Primary )
Nm_Karyawan ( Secondary )
idxID_Karyawan idxNm_Karyawan
DetailPemesananBarang Kd_Barang, KdPemesanan (
Primary )
idxPemesananBarang
DetailLoginK Kd_DetailLoginK idxKd_DetailLoginK
Primary )
DetailPembelianBarang Kd_Pembelian, Kd_Barang (
Primary )
idxPembelianBarang
DetailBarang Kd_DetailBarang ( Primary ) IdxDetailBarang
a) Daftar Pelanggan
CREATE UN IQUE INDEX idxKd_Daftar ON DaftarPelanggan (
Kd_Daftar );
CREATE IND EX idxT gl_Daftar ON DaftarPelanggan ( Tgl_Daftar ) CLUS TER;
b) Ms_Pengiriman
CREATE UNIQUE INDEX idxKd_Pengiriman ON Ms_Pengiriman (
Kd_Pengiriman );
CREATE IND EX idxT gl_Pengiriman ON M s_Pengiriman (
Tgl_Pengiriman ) C LUS TER;
c) TrPembelian
CREATE UNIQUE INDEX idxKd_Pembelian ON TrPembelian (
Kd_Pembelian );
CREATE IND EX T gl_Pembelian ON TrPembelian ( Tgl_Pembelian ) CLUS TER;
d) Ms_Barang
CREATE UNIQUE IND EX idxKd_Barang ON Ms_Barang ( Kd_Barang
);
CREATE INDEX Nm_Barang ON M s_Barang ( Nm_Barang ) CLUS TER;
e) TrHeaderPemesanan
CREATE UNIQUE IND EX idxKd_Pemesanan ON TrHeaderPemesanan
( Kd_Pemesanan );
CREATE INDEX T gl_Pemesanan ON TrHeaderPemesanan (
Tgl_Pemesanan ) CLUS TER;
f) TrDetailPemesanan
CREATE UNIQUE INDEX idxKd_PemesananON DaftarPelanggan (
Kd_Daftar );
g) Ms_Jasa
CREATE UNIQUE INDEX idxID_Jasa ON M s_Jasa ( ID_Jasa ); CREATE INDEX Jenis_Jasa ON M s_Jasa ( Jenis_Jasa ) CLUS TER; h) Ms_Pelanggan
CREATE UNIQUE INDEX idxID_Pelanggan ON M s_Pelanggan (
ID_Pelanggan );
CREATE INDEX Nm_Perusahaan ON M s_Pelanggan ( Nm_Perusahaan ) CLUS TER;\
i) TrHeaderPenjualan
CREATE UN IQUE INDEX idxKd_Penjualan ON TrHeaderPenjualan