· 8 years ago · May 29, 2018, 08:20 AM
1-- Membuat Database: `dbaplikasiperpustakaan` dan mengaktifkan
2CREATE DATABASE IF NOT EXISTS `dbaplikasiperpustakaan`
3DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
4USE `dbaplikasiperpustakaan`;
5
6-- Membuat struktur tabel `tbanggota`
7CREATE TABLE IF NOT EXISTS `tbanggota` (
8`kodeanggota` varchar(10) NOT NULL,
9`namaanggota` varchar(30) DEFAULT NULL,
10`alamatanggota` varchar(100) DEFAULT NULL,
11PRIMARY KEY (`kodeanggota`)
12) ENGINE=InnoDB DEFAULT CHARSET=latin1;
13
14-- Membuat struktur tabel `tbpetugas`
15CREATE TABLE IF NOT EXISTS `tbpetugas` (
16`kodepetugas` varchar(10) NOT NULL,
17`namapetugas` varchar(30) DEFAULT NULL,
18`alamatpetugas` varchar(80) DEFAULT NULL,
19`password` varchar(32) DEFAULT NULL,
20PRIMARY KEY (`kodepetugas`)
21) ENGINE=InnoDB DEFAULT CHARSET=latin1;
22
23-- Membuat struktur tabel `tbbuku`
24CREATE TABLE IF NOT EXISTS `tbbuku` (
25`kodebuku` varchar(10) NOT NULL,
26`judulbuku` varchar(60) DEFAULT NULL,
27`kodejenisbuku` varchar(10) NOT NULL,
28`pengarang` varchar(40) DEFAULT NULL,
29PRIMARY KEY (`kodebuku`),
30KEY `buku_jenisbuku_idx` (`kodejenisbuku`)
31) ENGINE=InnoDB DEFAULT CHARSET=latin1;
32
33-- Membuat struktur tabel `tbjenisbuku`
34CREATE TABLE IF NOT EXISTS `tbjenisbuku` (
35`kodejenisbuku` varchar(10) NOT NULL,
36`namajenisbuku` varchar(30) DEFAULT NULL,
37PRIMARY KEY (`kodejenisbuku`)
38) ENGINE=InnoDB DEFAULT CHARSET=latin1;
39
40-- Membuat struktur table `tbpeminjaman`
41CREATE TABLE IF NOT EXISTS `tbpeminjaman` (
42`nopeminjaman` varchar(10) NOT NULL,
43`kodeanggota` varchar(10) NOT NULL,
44`kodepetugas` varchar(10) NOT NULL,
45`waktupeminjaman` datetime DEFAULT NULL,
46PRIMARY KEY (`nopeminjaman`),
47KEY `peminjaman_anggota` (`kodeanggota`),
48KEY `peminjaman_petugas_idx` (`kodepetugas`)
49) ENGINE=InnoDB DEFAULT CHARSET=latin1;
50
51-- Membuat struktur tabel `tbdetailpeminjaman`
52CREATE TABLE IF NOT EXISTS `tbdetailpeminjaman` (
53`nopeminjaman` varchar(10) NOT NULL,
54`kodebuku` varchar(10) NOT NULL,
55`waktupengembalian` datetime DEFAULT NULL,
56`dikembalikan` varchar(1) DEFAULT NULL,
57PRIMARY KEY (`nopeminjaman`,`kodebuku`),
58KEY `detilpeminjaman_buku_idx` (`kodebuku`)
59) ENGINE=InnoDB DEFAULT CHARSET=latin1;
60
61-- Membuat relasi: menghubungkan foreign key dari `tbbuku` ke primary key di `tbjenisbuku`
62ALTER TABLE `tbbuku`
63 ADD CONSTRAINT `buku_jenisbuku` FOREIGN KEY (`kodejenisbuku`)
64 REFERENCES `tbjenisbuku` (`kodejenisbuku`);
65
66-- Membuat relasi: menghubungkan foreign key dari `tbdetailpeminjaman` ke primary key di `tbbuku`
67-- Membuat relasi: menghubungkan foreign key dari `tbdetailpeminjaman` ke primary key di `tbpeminjaman`
68ALTER TABLE `tbdetailpeminjaman`
69 ADD CONSTRAINT `detailpeminjaman_buku` FOREIGN KEY (`kodebuku`)
70 REFERENCES `tbbuku` (`kodebuku`),
71 ADD CONSTRAINT `detailpeminjaman_peminjaman` FOREIGN KEY (`nopeminjaman`)
72 REFERENCES `tbpeminjaman` (`nopeminjaman`);
73
74-- Membuat relasi: menggubungkan foreign key dari `tbpeminjaman` ke primary di `tbpetugas`
75-- Membuat relasi: menggubungkan foreign key dari `tbpeminjaman` ke primary di `tbanggota`
76ALTER TABLE `tbpeminjaman`
77 ADD CONSTRAINT `peminjaman_petugas` FOREIGN KEY (`kodepetugas`)
78 REFERENCES `tbpetugas` (`kodepetugas`),
79 ADD CONSTRAINT `peminjaman_anggota` FOREIGN KEY (`kodeanggota`)
80 REFERENCES `tbanggota` (`kodeanggota`);