Implementasi Basis Data IMPLEMENTASI DAN PENGUJIAN SISTEM

1. Sistem Operasi Window 7 Home Premium 64 bit 2. MysQL untuk database 3. WebServer 4. Web browser Google Chrome

4.2 Implementasi Basis Data

Pembuatan basis data dilakukan dengan mengunakan aplikasi pemrograman MySQL. Implementasi basis data dalam bahasa SQL adalah sebagai berikut :

1. Pembuatan Database

CREATE DATABASE `bbshop` ;

2. Tabel user

CREATE TABLE `user` `id_user` int11 NOT NULL auto_increment, `id_kota` int11 NOT NULL, `nama_user` varchar50 NOT NULL, `alamat_user` text NOT NULL, `ttl_user` date NOT NULL, `telp_user` varchar20 NOT NULL, `kodepos_user` varchar6 NOT NULL, `email_user` varchar50 NOT NULL, `password_user` varchar32 NOT NULL, `verificationcode_user` varchar32 NOT NULL, `status_user` enum0,1 NOT NULL, `hak_akses` enumAdministrator,User default User, PRIMARY KEY `id_user`, UNIQUE KEY `email_member` `email_user` KEY ‘id_kota’ ‘id_kota’ ALTER TABLE `user` ADD CONSTRAINT `id_kota_FK` FOREIGN KEY `id_kota` REFERENCES `kota` `id_kota`; ENGINE=InnoDB DEFAULT CHARSET=latin1;

3. Tabel Barang

CREATE TABLE `barang` `id_barang` int4 unsigned zerofill NOT NULL auto_increment, `id_kategori` int11 NOT NULL, `nama_barang` varchar50 NOT NULL, `harga_barang` int11 NOT NULL, `deskripsi_barang` text NOT NULL, `diskon_barang` int11 NOT NULL, `rating_barang` float NOT NULL, `voterrating_barang` int11 NOT NULL, `viewcounter_barang` int11 NOT NULL, `gambar_barang` varchar200 NOT NULL, PRIMARY KEY `id_barang`, KEY `id_kategori` `id_kategori` ALTER TABLE `barang` ADD CONSTRAINT `id_kat_FK` FOREIGN KEY `id_kategori` REFERENCES `kategori` `id_kategori`; ENGINE=InnoDB DEFAULT CHARSET=latin1;

4. Tabel Kategori

CREATE TABLE `kategori` `id_kategori` int11 NOT NULL auto_increment, `kategori` varchar40 NOT NULL, PRIMARY KEY `id_kategori` ENGINE=InnoDB DEFAULT CHARSET=latin1; AUTO_INCREMENT=17;

5. Tabel Barangdetail

CREATE TABLE `barangdetail` `id_barangdetail` int11 NOT NULL auto_increment, `id_barang` int4 unsigned zerofill NOT NULL, `id_warna` int11 default NULL, `id_bahan` int11 NOT NULL, `tanggal_barangdetail` datetime NOT NULL, `stok_barangdetail` int11 NOT NULL, `berat_barangdetail` float NOT NULL, `promo_barangdetail` enum0,1 NOT NULL, PRIMARY KEY `id_barangdetail`, KEY `id_barang` `id_barang`, KEY `id_warna` `id_warna`, KEY `id_bahan` `id_bahan` ALTER TABLE `barangdetail` ADD CONSTRAINT `idbrg_FK` FOREIGN KEY `id_barang` REFERENCES `barang` `id_barang`; ADD CONSTRAINT `idwarna_FK` FOREIGN KEY `id_warna` REFERENCES `warna` `id_warna`; ADD CONSTRAINT `idbhn_FK` FOREIGN KEY `id_bahan` REFERENCES `bahan` `id_bahan`; ENGINE=InnoDB DEFAULT CHARSET=latin1;

6. Tabel Pembelian

CREATE TABLE `pembelian` `id_pembelian` int11 NOT NULL auto_increment, `id_detailpembelian` int11 default NULL, `id_user` int11 default NULL, `id_barangdetail` int11 NOT NULL, `harga_temp` int11 NOT NULL, `stok_temp` int11 default NULL, `berat_temp` float NOT NULL, `status_retur` enum0,1 NOT NULL, `session_id` varchar32 NOT NULL, PRIMARY KEY `id_pembelian` KEY ‘id_detailpembelian’ ‘id_detailpembelian’ ALTER TABLE `pembelian` ADD CONSTRAINT `iddp_FK` FOREIGN KEY `id_detailpembelian` REFERENCES `detailpembelian` `id_detailpembelian` ADD CONSTRAINT `idmember_FK` FOREIGN KEY `id_user` REFERENCES `user` `id_user` ADD CONSTRAINT `idbrgd_retur_FK` FOREIGN KEY `id_barangdetail` REFERENCES `barangdetail` `id_barangdetail`; ENGINE=InnoDB DEFAULT CHARSET=latin1;

7. Tabel Detailpembelian

CREATE TABLE `detailpembelian` `id_detailpembelian` int11 NOT NULL auto_increment, `tanggal_detailpembelian` date NOT NULL, `jenis_pembayaran` enumpaypal,rekening default NULL, `status_pengiriman` enumdipesan,dikonfirmasi,dibayar,dikirim,diterima NOT NULL, `keterangan_detailpembelian` text NOT NULL, `nama_pemesan` varchar50 NOT NULL, `alamat_pemesan` text NOT NULL, `email_pemesan` varchar50 NOT NULL, `no_telp_pemesan` varchar20 NOT NULL, `kodepos_pemesan` varchar6 NOT NULL, `nama_bank_pemesan` varchar50 NOT NULL, `no_transaksi_pemesan` varchar20 NOT NULL, `no_resi_pemesan` varchar32 NOT NULL, `id_rekening` int11 NOT NULL, `id_ongkir` int11 NOT NULL, `status_pemesanan` enumok,cancel NOT NULL, `session_id` varchar32 NOT NULL, PRIMARY KEY `id_detailpembelian` ALTER TABLE `detailpembelian` ADD CONSTRAINT `idrek _FK` FOREIGN KEY `id_rekening` REFERENCES `rekening` `id_rekening` ADD CONSTRAINT `id_ongkir_FK` FOREIGN KEY `id_ongkir` REFERENCES `onkgkir` `id_ongkir` ENGINE=InnoDB DEFAULT CHARSET=latin1

8. Tabel Jenispengiriman

CREATE TABLE `jenispengiriman` `id_jenispengiriman` int11 NOT NULL auto_increment, `nama_jenispengiriman` varchar50 NOT NULL, `deskripsi_jenispengiriman` text NOT NULL, PRIMARY KEY `id_jenispengiriman` ENGINE=InnoDB DEFAULT CHARSET=latin1;

9. Tabel Ongkos Kirim

CREATE TABLE `ongkir` `id_ongkir` int11 NOT NULL auto_increment, `id_kota` int11 NOT NULL, `id_jenispengiriman` int11 NOT NULL, `harga_ongkir` int11 NOT NULL, PRIMARY KEY `id_ongkir` ADD CONSTRAINT `id_kota_FK` FOREIGN KEY `id_kota` REFERENCES `kota` `id_kota`; ADD CONSTRAINT `idjp_FK` FOREIGN KEY `id_jenispengiriman` REFERENCES `jenispengiriman` `id_jenispengiriman`; ENGINE=InnoDB DEFAULT CHARSET=latin1;

10. Tabel Provinsi

CREATE TABLE `provinsi` `id_provinsi` int11 NOT NULL auto_increment, `nama_provinsi` varchar100 default NULL, PRIMARY KEY `id_prov` ENGINE=InnoDB DEFAULT CHARSET=latin1; AUTO_INCREMENT=34;

11. Tabel Kota

CREATE TABLE `kota` `id_kota` int10 NOT NULL auto_increment, `id_provinsi` int10 default NULL, `nama_kota` varchar50 default NULL, `kota` varchar20 default NULL, UNIQUE KEY `kotaPX` `id_kota`, KEY `id_provinsi` `id_provinsi` ADD CONSTRAINT `id_provinsi` FOREIGN KEY `id_provinsi` REFERENCES `provinsi` `id_provinsi`; ENGINE=InnoDB DEFAULT CHARSET=latin1;

12. Tabel Gambar

CREATE TABLE `gambar` `id_gambar` int11 NOT NULL auto_increment, `id_barang` int4 unsigned zerofill NOT NULL, `nama_gambar` varchar200 NOT NULL, `profile_gambar` enum0,1 NOT NULL, PRIMARY KEY `id_gambar` ENGINE=InnoDB DEFAULT CHARSET=latin1;

13. Tabel Konfirmasi Pembayaran

CREATE TABLE `konfirmasipembayaran` `id_konfirmasipembayaran` int11 NOT NULL auto_increment, `id_detailpembelian` int11 NOT NULL, `nama_bank_pengirim` varchar25 NOT NULL, `no_rekening_pengirim` varchar25 NOT NULL, `total_bayar` int11 NOT NULL, `tanggal_transfer` date NOT NULL, PRIMARY KEY `id_konfirmasipembayaran` ENGINE=InnoDB DEFAULT CHARSET=latin1;

14. Tabel Kurs

CREATE TABLE `kurs` `id_kurs` int11 NOT NULL auto_increment, `kode_kurs` varchar5 NOT NULL, `symbol_kurs` varchar5 NOT NULL, `harga_kurs` int11 NOT NULL, `deskripsi_kurs` text NOT NULL, `status_kurs` enum0,1 NOT NULL, PRIMARY KEY `id_kurs`, UNIQUE KEY `nama_currency` `kode_kurs`,`symbol_kurs` ENGINE=InnoDB DEFAULT CHARSET=latin1;

15. Tabel Retur

CREATE TABLE `retur` `id_retur` int11 NOT NULL auto_increment, `id_user` int11 NOT NULL, `jasa_kirim` varchar30 NOT NULL, `no_kirim` varchar20 NOT NULL, `tgl_retur` date NOT NULL, `total_retur` int11 NOT NULL, `status_retur` varchar10 NOT NULL, PRIMARY KEY `id_retur`, KEY `idmember_retur_FK` `id_user` ENGINE=InnoDB DEFAULT CHARSET=latin1; AUTO_INCREMENT=6 ; ADD CONSTRAINT `idmember_retur_FK` FOREIGN KEY `id_user` REFERENCES `member` `id_user`;

16. Tabel Detail Retur

CREATE TABLE `detail_retur` `id_retur` int11 NOT NULL, `idpembelian ` int11 NOT NULL, `idbarang` int8 NOT NULL, `size` varchar10 NOT NULL, `qty` int11 NOT NULL, `harga` int11 NOT NULL, `diskon` int11 NOT NULL, `komplain` text NOT NULL, KEY `idretur_FK` `id_retur`, KEY `idbarang_retur_FK` `idbarang` ENGINE=InnoDB DEFAULT CHARSET=latin1; ALTER TABLE `detail_retur` ADD CONSTRAINT `idbarang_retur_FK` FOREIGN KEY `idbarang` REFERENCES `barang` `id_barang`, ADD CONSTRAINT `idretur_FK` FOREIGN KEY `id_retur` REFERENCES `retur` `id_retur`;

17. Tabel Testimoni Barang

CREATE TABLE `testi` `id_testi` int11 NOT NULL auto_increment, `Id_user` int11 NOT NULL, `tgl_testi` DATETIME, `testi` text NOT NULL, `id_barang` int4 unsigned zerofill NOT NULL, PRIMARY KEY `id_testi` ENGINE=InnoDB DEFAULT CHARSET=latin1;

18. Tabel Pengadaan Barang

CREATE TABLE `pengadaanbarang` `id_pb` int4 NOT NULL auto_increment, `id_barangdetail` int4 NOT NULL, `jumlah` int4 NOT NULL, `harga` int11 NOT NULL, `tgl_masuk` date NOT NULL, `rekanan` varchar100 NOT NULL, `id_user` int11 NOT NULL, PRIMARY KEY `id_pb` ENGINE=InnoDB DEFAULT CHARSET=latin1;

19. Tabel Promo

CREATE TABLE `promo` `id_barang` int4 unsigned zerofill NOT NULL, `cat_promo` enumHOT PRODUCT,SALE,NEW PRODUCT NOT NULL, `gambar` varchar100 NOT NULL, `status_promo` tinyint1 NOT NULL default 0, UNIQUE KEY `id_barang` `id_barang` ENGINE=InnoDB DEFAULT CHARSET=latin1;

20. Tabel Rekening

CREATE TABLE `rekening` `id_rekening` int11 NOT NULL auto_increment, `nama_rekening` varchar50 NOT NULL, `bank_rekening` varchar50 NOT NULL, `cabang_rekening` varchar100 NOT NULL, `no_rekening` varchar32 NOT NULL, `gambar_rekening` varchar200 NOT NULL, PRIMARY KEY `id_rekening` ENGINE=InnoDB DEFAULT CHARSET=latin1

21. Tabel Bahan

CREATE TABLE `bahan` `id_bahan` int11 NOT NULL auto_increment, `nama_bahan` varchar50 NOT NULL, `deskripsi_bahan` text NOT NULL, PRIMARY KEY `id_bahan` ENGINE=InnoDB DEFAULT CHARSET=latin1;

22. Tabel Warna

CREATE TABLE `warna` `id_warna` int11 NOT NULL auto_increment, `nama_warna` varchar50 NOT NULL, `format_warna` varchar10 default NULL, PRIMARY KEY `id_warna` ENGINE=InnoDB DEFAULT CHARSET=latin1;

4.3 Implementasi Antarmuka