Implementasi Basis Data Implementasi Sistem
3. Tabel Pemesanan Tabel pemesanan ini digunakan untuk menyimpan data pemesanan. Tabel
pemesanan dapat dilihat pada tabel 4.5.
Tabel 4. 5 Tabel Pemesanan
No SQL
1 2
3 4
5 6
7 8
9
10 11
12 13
14 15
16 17
18 19
CREATE TABLE IF NOT EXISTS `pemesanan` `id_pesan` int5 NOT NULL AUTO_INCREMENT,
`tgl_pesan` date NOT NULL, `tgl_kirim` date NOT NULL,
`estimasi_pengiriman` datetime NOT NULL,
`verifikasi_1` enum„belum‟,‟sudah‟ NOT NULL, `verifikasi_2` enum„belum‟,‟sudah‟ NOT NULL,
`verifikasi_3` enum„belum‟,‟sudah‟ NOT NULL, `verifikasi_puskes` enum„belum‟,‟sudah‟ NOT NULL,
`max` int5 NOT NULL, `status` enum„menunggu persetujuan‟,‟telah disetujui‟,‟dalam pengiriman‟,‟sudah
diterima‟,‟belum dikirim‟,‟ditolak‟ NOT NULL, `id_puskesmas` int5 NOT NULL,
`ket` text NOT NULL, PRIMARY KEY `id_pesan`,
KEY `id_cabang` `id_puskesmas` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=50 ;
ALTER TABLE `pemesanan` ADD CONSTRAINT `pemesanan_ibfk_1` FOREIGN KEY `id_puskesmas`
REFERENCES `puskesmas` `id_puskesmas`;
4. Tabel pengadaan Tabel pengadaan ini digunakan untuk menyimpan data dari pengadaan. Tabel
pengadaan dapat dilihat pada tabel 4.6.
Tabel 4. 6 Tabel Pengadaan
No SQL
1 2
3 4
5 6
7 8
9
10 11
12 13
14 15
CREATE TABLE IF NOT EXISTS `pengadaan` `id_pengadaan` int5 NOT NULL AUTO_INCREMENT,
`tgl_pengadaan` date NOT NULL, `tgl_kirim` datetime NOT NULL,
`estimasi_pengiriman` date NOT NULL,
`ver_kabid` enum„belum‟,‟sudah‟ NOT NULL, `ver_subag` enum„belum‟,‟sudah‟,‟‟,‟‟ NOT NULL,
`ver_kepgud` enum„belum‟,‟sudah‟ NOT NULL, `ver_kepupt` enum„belum‟,‟sudah‟ NOT NULL,
`ver_bkbpp` enum„belum‟,‟sudah‟ NOT NULL, `ver_bkkbn` enum„belum‟,‟sudah‟ NOT NULL,
`ket` text NOT NULL, `id_uptkb` int5 DEFAULT NULL,
`bkbpp` enum„n‟,‟y‟ NOT NULL DEFAULT „n‟, `status` enum„menunggu persetujuan‟,‟telah disetujui‟,‟dalam pengiriman‟,‟sudah
16 17
18 19
20 21
22 23
diterima‟,‟belum dikirim‟,‟ditolak‟ NOT NULL DEFAULT „belum dikirim‟, `tgl_terima` datetime NOT NULL,
UNIQUE KEY `id_pesan` `id_pengadaan`, KEY `id_uptkb` `id_uptkb`
ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ; ALTER TABLE `pengadaan`
ADD
CONSTRAINT `pengadaan_ibfk_1`
FOREIGN KEY
`id_uptkb` REFERENCES `uptkb` `id_uptkb`;
5. Tabel Pengiriman Tabel pengiriman ini digunakan untuk menyimpan data dari pengiriman.
Tabel pengiriman dapat dilihat pada tabel 4.7.
Tabel 4. 7 Tabel Pengiriman
No SQL
1 2
3 4
5 6
7 8
9
10 11
12 13
14 15
16 17
18 19
20 21
CREATE TABLE IF NOT EXISTS `pengiriman` `id_kirim` int5 NOT NULL AUTO_INCREMENT,
`id_pesan` int5 DEFAULT NULL, `tgl_pengiriman` datetime NOT NULL,
`no_polisi` varchar10 NOT NULL, `id_user` int5 NOT NULL,
`tgl_diterima` datetime NOT NULL, `id_pengadaan` int11 DEFAULT NULL,
PRIMARY KEY `id_kirim`, KEY `no_polisi` `no_polisi`,
KEY `id_pesan` `id_pesan`, KEY `id_user` `id_user`,
KEY `id_pengadaan` `id_pengadaan` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=19 ;
ALTER TABLE `pengiriman` ADD
CONSTRAINT `pengiriman_ibfk_1`
FOREIGN KEY
`id_pesan` REFERENCES `pemesanan` `id_pesan`,
ADD CONSTRAINT
`pengiriman_ibfk_2` FOREIGN
KEY `no_polisi`
REFERENCES `t_transportasi` `no_polisi`, ADD
CONSTRAINT `pengiriman_ibfk_3`
FOREIGN KEY
`id_user` REFERENCES `user` `id_user`;
6. Tabel Puskesmas Tabel puskesmas ini digunakan untuk menyimpan data dari puskesmas.
Tabel puskesmas dapat dilihat pada tabel 4.8
Tabel 4. 8 Tabel Puskesmas
No SQL
1 2
3 4
CREATE TABLE IF NOT EXISTS `puskesmas` `id_puskesmas` int11 NOT NULL AUTO_INCREMENT,
`nama_puskesmas` varchar20 NOT NULL, `alamat_puskesmas` text NOT NULL,
5 6
7 8
9
10 11
12 13
`jarak_puskesmas` int11 NOT NULL, `id_uptkb` int5 NOT NULL,
PRIMARY KEY `id_puskesmas`, UNIQUE KEY `nama_puskesmas` `nama_puskesmas`,
KEY `id_uptkb` `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
ALTER TABLE `puskesmas` ADD
CONSTRAINT `puskesmas_ibfk_1`
FOREIGN KEY
`id_uptkb` REFERENCES `uptkb` `id_uptkb`;
7. Tabel Ramal Tabel ramal ini digunakan untuk menyimpan data dari peramalan barang.
Tabel ramal dapat dilihat pada tabel 4.9.
Tabel 4. 9 Tabel Peramalan
No SQL
1 2
3 4
5 6
7 8
9
10 11
12 CREATE TABLE IF NOT EXISTS `ramal`
`id_ramal` int5 NOT NULL AUTO_INCREMENT, `tgl_ramal` date NOT NULL,
`qty_ramal` int11 NOT NULL, `id_barang` varchar10 NOT NULL,
`id_uptkb` int5 DEFAULT NULL,
`bkbpp` enum„n‟,‟y‟ NOT NULL, `keterangan` text NOT NULL,
PRIMARY KEY `id_ramal`, KEY `id_barang` `id_barang`,
KEY `id_uptkb` `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=35 ;
8. Tabel T_barang Tabel t_barang ini digunakan untuk menyimpan data dari barang. Tabel
barang dapat dilihat pada tabel 4.10.
Tabel 4. 10 Tabel Barang
No SQL
1 2
3 4
5 6
7 8
9
10 11
12 CREATE TABLE IF NOT EXISTS `t_barang`
`id_barang` varchar10 NOT NULL, `tgl_masuk` date NOT NULL,
`tgl_kadaluarsa` date NOT NULL, `nama_barang` varchar50 NOT NULL,
`jenis` varchar10 NOT NULL, `satuan` varchar11 NOT NULL,
`qty` int11 NOT NULL,
`safetyStock` int11 NOT NULL DEFAULT „0‟, `status` enum„Ada‟,‟Kosong‟ NOT NULL DEFAULT „Kosong‟,
`id_uptkb` int5 DEFAULT NULL, `id_puskesmas` int5 DEFAULT NULL,
13 14
15 16
17 18
19 20
21 `bkbpp` enum„y‟,‟n‟ NOT NULL DEFAULT „n‟,
`bkkbn` enum„y‟,‟n‟ NOT NULL DEFAULT „n‟, PRIMARY KEY `id_barang`,
KEY `id_uptkb` `id_uptkb`, KEY `id_puskesmas` `id_puskesmas`
ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `t_barang` ADD
CONSTRAINT `t_barang_ibfk_1`
FOREIGN KEY
`id_uptkb` REFERENCES `uptkb` `id_uptkb`;
9. Tabel t_transportasi Tabel t_transportasi ini digunakan untuk menyimpan data transportasi.
Tabel t_transportasi dapat dilihat pada tabel 4.11.
Tabel 4. 11 Tabel Transportasi
No SQL
1 2
3 4
5 6
7 8
9
10 11
12 13
14 CREATE TABLE IF NOT EXISTS `t_transportasi`
`no_polisi` varchar10 NOT NULL, `jenis_kendaraan` varchar20 NOT NULL,
`pengemudi` varchar30 NOT NULL,
`badan` enum„UPTKB‟,‟BKBPP‟ NOT NULL, `id_uptkb` int5 DEFAULT NULL,
`bkbpp` enum„n‟,‟y‟ NOT NULL, `bkkbn` enum„n‟,‟y‟ NOT NULL,
PRIMARY KEY `no_polisi`, KEY `id_uptkb` `id_uptkb`
ENGINE=InnoDB DEFAULT CHARSET=latin1; ALTER TABLE `t_transportasi`
ADD CONSTRAINT `t_transportasi_ibfk_1` FOREIGN KEY `id_uptkb` REFERENCES `uptkb` `id_uptkb`;
10. Tabel uptkb Tabel uptkb ini digunakan untuk menyimpan data uptkb. Tabel uptkb
dapat dilihat pada tabel 4.12.
Tabel 4. 12 Tabel UPTKB
No SQL
1 2
3 4
5 6
7 CREATE TABLE IF NOT EXISTS `uptkb`
`id_uptkb` int5 NOT NULL AUTO_INCREMENT, `nama_uptkb` varchar25 NOT NULL,
`alamat_uptkb` text NOT NULL, `jarak_uptkb` int5 NOT NULL,
PRIMARY KEY `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
11. Tabel user Tabel user ini digunakan untuk menyimpan data user. Tabel user dapat
dilihat pada tabel 4.13.
Tabel 4. 13 Tabel User
No SQL
1 2
3 4
5 6
7 8
9
10 11
12 13
14 15
16 17
18 19
20 21
CREATE TABLE IF NOT EXISTS `user` `id_user` int5 NOT NULL AUTO_INCREMENT,
`nip` varchar18 NOT NULL, `password` varchar100 NOT NULL,
`nama` varchar50 NOT NULL, `email` varchar55 NOT NULL,
`jabatan` varchar60 NOT NULL, `id_uptkb` int5 DEFAULT NULL,
`id_puskesmas` int5 DEFAULT NULL,
`bkbpp` enum„y‟,‟n‟ NOT NULL DEFAULT „n‟, `bkkbn` enum„y‟,‟n‟ NOT NULL DEFAULT „n‟,
`reset_token` text NOT NULL, PRIMARY KEY `id_user`,
UNIQUE KEY `nip` `nip`, KEY `id_puskesmas` `id_puskesmas`,
KEY `id_uptkb` `id_uptkb` ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=65 ;
ALTER TABLE `user` ADD CONSTRAINT `user_ibfk_1` FOREIGN KEY `id_uptkb` REFERENCES
`uptkb` `id_uptkb`, ADD
CONSTRAINT `user_ibfk_2`
FOREIGN KEY
`id_puskesmas` REFERENCES `puskesmas` `id_puskesmas`;