You are on page 1of 8

MariaDB [(none)]> create database tokobuku_atmaja;

Query OK, 1 row affected (0.008 sec)

MariaDB [(none)]> use tokobuku_atmaja;


Database changed
MariaDB [tokobuku_atmaja]> create table kasir(
-> id_kasir varchar(20) not null primary key,
-> nama_kasir varchar(60) default null,
-> alamat_kasir varchar(120) default null,
-> telp varchar(12) default null,
-> status_kasir enum('Aktif','Tidak Aktif') default null,
-> username varchar(30) default null,
-> password varchar(20) default null,
-> akses enum('Admin','Kasir') default null);
Query OK, 0 rows affected (0.114 sec)

MariaDB [tokobuku_atmaja]> create table distributor(


-> id_distributor varchar(20) not null primary key,
-> nama_distributor varchar(150) default null,
-> alamat varchar(120) default null,
-> telp_distributor varchar(12) default null);
Query OK, 0 rows affected (0.071 sec)

MariaDB [tokobuku_atmaja]> create table pembelian(


-> id_pembelian varchar(20) not null primary key,
-> id_distributor varchar(20) default null,
-> id_buku varchar(20) default null,
-> jumlah_beli int(11) default null,
-> tanggal_beli date default null);
Query OK, 0 rows affected (0.078 sec)

MariaDB [tokobuku_atmaja]> create table buku(


-> id_buku varchar(20) not null primary key,
-> judul_buku varchar(200) default null,
-> nomor_isbn varchar(13) default null,
-> penulis varchar(100) default null, penerbit varchar(60) default null,
-> tahun_terbit varchar(4) default null, stok int(11) default null,
-> harga_pokok int(20) default null, harga_jual int(20) default null,
-> diskon int(3) default null);
Query OK, 0 rows affected (0.090 sec)

MariaDB [tokobuku_atmaja]> create table penjualan(


-> id_penjualan varchar(20) not null primary key,
-> id_kasir varchar(20) default null,
-> tanggal_penjualan date default null);
Query OK, 0 rows affected (0.077 sec)

MariaDB [tokobuku_atmaja]> create table detail_penjualan(


-> id_det_penjualan int(11) auto_increment primary key,
-> id_penjualan varchar(20) default null,
-> id_buku varchar(20) default null,
-> jumlah_jual int(11) default null,
-> tanggal_jual date default null);
Query OK, 0 rows affected (0.080 sec)

MariaDB [tokobuku_atmaja]> alter table pembelian add constraint beli_distro


-> foreign key (id_distributor) references distributor(id_distributor)
-> on update cascade on delete cascade;
Query OK, 0 rows affected (0.175 sec)
Records: 0 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> alter table pembelian add constraint beli_buku


-> foreign key (id_buku) references buku(id_buku)
-> on update cascade on delete cascade;
Query OK, 0 rows affected (0.156 sec)
Records: 0 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> alter table penjualan add constraint kasir_jual


-> foreign key (id_kasir) references kasir(id_kasir)
-> on update cascade on delete cascade;
Query OK, 0 rows affected (0.145 sec)
Records: 0 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> alter table detail_penjualan add constraint detail_jual


-> foreign key (id_penjualan) references penjualan(id_penjualan)
-> on update cascade on delete cascade;
Query OK, 0 rows affected (0.184 sec)
Records: 0 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> alter table detail_penjualan add constraint buku_jual


-> foreign key (id_buku) references buku(id_buku)
-> on update cascade on delete cascade;
Query OK, 0 rows affected (0.139 sec)
Records: 0 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> insert into kasir (id_kasir, nama_kasir, alamat_kasir,


-> telp, status_kasir, username, password, akses) values
-> ('KAS001','Amalia','Jl. Kruing Barat No.74','08190470158','1',
-> 'liacute','liacute','1'),
-> ('KAS002','Bagas','Jl. Gaharu Timur Dalam No.28','08183174035','1',
-> 'bagas','wongbagus','2'),
-> ('KAS003','Chintia Dewi','Jl. Jati Barat No.65','08520124092','2',
-> 'dewi','dewi','2');
Query OK, 3 rows affected (0.007 sec)
Records: 3 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> select * from kasir;


+----------+--------------+------------------------------+-------------
+--------------+----------+-----------+-------+
| id_kasir | nama_kasir | alamat_kasir | telp |
status_kasir | username | password | akses |
+----------+--------------+------------------------------+-------------
+--------------+----------+-----------+-------+
| KAS001 | Amalia | Jl. Kruing Barat No.74 | 08190470158 | Aktif
| liacute | liacute | Admin |
| KAS002 | Bagas | Jl. Gaharu Timur Dalam No.28 | 08183174035 | Aktif
| bagas | wongbagus | Kasir |
| KAS003 | Chintia Dewi | Jl. Jati Barat No.65 | 08520124092 | Tidak
Aktif | dewi | dewi | Kasir |
+----------+--------------+------------------------------+-------------
+--------------+----------+-----------+-------+
3 rows in set (0.001 sec)

MariaDB [tokobuku_atmaja]> insert into distributor (id_distributor,


nama_distributor,
-> alamat, telp_distributor) values
-> ('1','Gramedia','Jl. Kemayoran','08183929849'),
-> ('DIST002','Cahaya Ilmu','Jl. Sudirman','08102472509'),
-> ('DIST003','Gudang Buku','Jl. Ahmad Yani','08183275030);
'> '
-> ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MariaDB server version for the right syntax to use near '' at
line 5
MariaDB [tokobuku_atmaja]> insert into distributor (id_distributor,
nama_distributor,
-> alamat, telp_distributor) values
-> ('DIST001','Gramedia','Jl. Kemayoran','08183929849'),
-> ('DIST002','Cahaya Ilmu','Jl. Sudirman','08102472509'),
-> ('DIST003','Gudang Buku','Jl. Ahmad Yani','08183275030');
Query OK, 3 rows affected (0.005 sec)
Records: 3 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> SELECT * FROM DISTRIBUTOR;


+----------------+------------------+----------------+------------------+
| id_distributor | nama_distributor | alamat | telp_distributor |
+----------------+------------------+----------------+------------------+
| DIST001 | Gramedia | Jl. Kemayoran | 08183929849 |
| DIST002 | Cahaya Ilmu | Jl. Sudirman | 08102472509 |
| DIST003 | Gudang Buku | Jl. Ahmad Yani | 08183275030 |
+----------------+------------------+----------------+------------------+
3 rows in set (0.001 sec)

MariaDB [tokobuku_atmaja]> insert into buku (id_buku, judul_buku, nomor_isbn,


-> penulis, penerbit, tahun_terbit, stok, harga_pokok, harga_jual, diskon)
-> values
-> ('B0001','Goosebumps','978979625012','R.L. Stein','Gramedia','2005',
-> 80, 45000, 65000, 0),
-> ('B0002','Basis Data','978979736827','Abdurrahman','Informatika','2012',
-> 90, 55000, 80000, 0),
-> ('B0003','Pemrograman Web','978979850136','Adi Kunia','Andi Offset','2016',
-> 20, 24000, 30000, 0);
Query OK, 3 rows affected (0.005 sec)
Records: 3 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> select * from buku;


+---------+-----------------+--------------+-------------+-------------
+--------------+------+-------------+------------+--------+
| id_buku | judul_buku | nomor_isbn | penulis | penerbit |
tahun_terbit | stok | harga_pokok | harga_jual | diskon |
+---------+-----------------+--------------+-------------+-------------
+--------------+------+-------------+------------+--------+
| B0001 | Goosebumps | 978979625012 | R.L. Stein | Gramedia | 2005
| 80 | 45000 | 65000 | 0 |
| B0002 | Basis Data | 978979736827 | Abdurrahman | Informatika | 2012
| 90 | 55000 | 80000 | 0 |
| B0003 | Pemrograman Web | 978979850136 | Adi Kunia | Andi Offset | 2016
| 20 | 24000 | 30000 | 0 |
+---------+-----------------+--------------+-------------+-------------
+--------------+------+-------------+------------+--------+
3 rows in set (0.002 sec)

MariaDB [tokobuku_atmaja]> desc pembelian;


+----------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-------------+------+-----+---------+-------+
| id_pembelian | varchar(20) | NO | PRI | NULL | |
| id_distributor | varchar(20) | YES | MUL | NULL | |
| id_buku | varchar(20) | YES | MUL | NULL | |
| jumlah_beli | int(11) | YES | | NULL | |
| tanggal_beli | date | YES | | NULL | |
+----------------+-------------+------+-----+---------+-------+
5 rows in set (0.066 sec)

MariaDB [tokobuku_atmaja]> insert into pembelian (id_pembelian, id_distributor,


-> id_buku, jumlah_beli, tanggal_beli) values
-> ('BELI001','DIST003','B0002', 300, '2022-10-25'),
-> ('BELI002','DIST001','B0002', 200, '2022-10-27'),
-> ('BELI003','DIST002','B0002', 250, '2022-10-30'),
-> ('BELI004','DIST001','B0001', 125, '2022-11-01');
Query OK, 4 rows affected (0.011 sec)
Records: 4 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> select * from pembelian;


+--------------+----------------+---------+-------------+--------------+
| id_pembelian | id_distributor | id_buku | jumlah_beli | tanggal_beli |
+--------------+----------------+---------+-------------+--------------+
| BELI001 | DIST003 | B0002 | 300 | 2022-10-25 |
| BELI002 | DIST001 | B0002 | 200 | 2022-10-27 |
| BELI003 | DIST002 | B0002 | 250 | 2022-10-30 |
| BELI004 | DIST001 | B0001 | 125 | 2022-11-01 |
+--------------+----------------+---------+-------------+--------------+
4 rows in set (0.001 sec)

MariaDB [tokobuku_atmaja]> insert into penjualan (id_penjualan, id_kasir,


-> tanggal_penjualan) values
-> ('JUAL001','KAS002','2022-12-10'),
-> ('JUAL002','KAS001','2022-12-15'),
-> ('JUAL003','KAS003','2022-12-16'),
-> ('JUAL004','KAS002','2022-12-16'),
-> ('JUAL005','KAS002','2022-12-20');
Query OK, 5 rows affected (0.013 sec)
Records: 5 Duplicates: 0 Warnings: 0

MariaDB [tokobuku_atmaja]> insert into detail_penjualan (id_det_penjualan,


-> id_penjualan, id_buku, jumlah) values
-> ('DETJUAL001','JUAL001','B0002', 7),
-> ('DETJUAL002','JUAL002','B0002', 15),
-> ('DETJUAL003','JUAL003','',0),
-> ('DETJUAL004','JUAL004','B0001', 8),
-> ('DETJUAL005','JUAL005','B0003',20);
ERROR 1054 (42S22): Unknown column 'jumlah' in 'field list'
MariaDB [tokobuku_atmaja]> insert into detail_penjualan (id_det_penjualan,
-> id_penjualan, id_buku, jumlah_jual) values
-> ('DETJUAL001','JUAL001','B0002', 7),
-> ('DETJUAL002','JUAL002','B0002', 15),
-> ('DETJUAL003','JUAL003','',0),
-> ('DETJUAL004','JUAL004','B0001', 8),
-> ('DETJUAL005','JUAL005','B0003',20);
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint
fails (`tokobuku_atmaja`.`detail_penjualan`, CONSTRAINT `buku_jual` FOREIGN KEY
(`id_buku`) REFERENCES `buku` (`id_buku`) ON DELETE CASCADE ON UPDATE CASCADE)
MariaDB [tokobuku_atmaja]> select * from detail_penjualan;
+------------------+--------------+---------+-------------+
| id_det_penjualan | id_penjualan | id_buku | jumlah_jual |
+------------------+--------------+---------+-------------+
| 6 | JUAL001 | B0002 | 7 |
| 7 | JUAL002 | B0002 | 15 |
| 8 | JUAL003 | B0001 | 0 |
| 9 | JUAL004 | B0001 | 8 |
| 10 | JUAL005 | B0003 | 20 |
+------------------+--------------+---------+-------------+
5 rows in set (0.001 sec)

MariaDB [tokobuku_atmaja]> create view data_pembelian as


-> select pembelian.id_pembelian, distributor.nama_distributor,
-> distributor.telp_distributor, buku.judul_buku, buku.stok,
-> pembelian.jumlah_beli, pembelian.tanggal_beli
-> from pembelian, distributor, buku
-> where pembelian.id_distributor=distributor.id_distributor and
-> pembelian.id_buku=buku.id_buku;
Query OK, 0 rows affected (0.059 sec)

MariaDB [tokobuku_atmaja]> select * from data_pembelian;


+--------------+------------------+------------------+------------+------
+-------------+--------------+
| id_pembelian | nama_distributor | telp_distributor | judul_buku | stok |
jumlah_beli | tanggal_beli |
+--------------+------------------+------------------+------------+------
+-------------+--------------+
| BELI001 | Gudang Buku | 08183275030 | Basis Data | 90 |
300 | 2022-10-25 |
| BELI002 | Gramedia | 08183929849 | Basis Data | 90 |
200 | 2022-10-27 |
| BELI003 | Cahaya Ilmu | 08102472509 | Basis Data | 90 |
250 | 2022-10-30 |
| BELI004 | Gramedia | 08183929849 | Goosebumps | 80 |
125 | 2022-11-01 |
+--------------+------------------+------------------+------------+------
+-------------+--------------+
4 rows in set (0.004 sec)

MariaDB [tokobuku_atmaja]> desc penjualan;


+-------------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+-------------+------+-----+---------+-------+
| id_penjualan | varchar(20) | NO | PRI | NULL | |
| id_kasir | varchar(20) | YES | MUL | NULL | |
| tanggal_penjualan | date | YES | | NULL | |
+-------------------+-------------+------+-----+---------+-------+
3 rows in set (0.088 sec)

MariaDB [tokobuku_atmaja]> desc detail_penjualan;


+------------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------------+-------------+------+-----+---------+----------------+
| id_det_penjualan | int(11) | NO | PRI | NULL | auto_increment |
| id_penjualan | varchar(20) | YES | MUL | NULL | |
| id_buku | varchar(20) | YES | MUL | NULL | |
| jumlah_jual | int(11) | YES | | NULL | |
+------------------+-------------+------+-----+---------+----------------+
4 rows in set (0.059 sec)

MariaDB [tokobuku_atmaja]> create view data_penjualan as


-> penjualan.id_penjualan, kasir.id_kasir, kasir.nama_kasir,
-> kasir.status_kasir, kasir.akses, penjualan.tanggal_penjualan,
-> buku.judul_buku, buku.stok, buku.harga_pokok, buku.harga_jual,
-> buku.diskon, detail_penjualan.id_buku, detail_penjualan.jumlah_jual
-> from penjualan, detail_penjualan, kasir, buku
-> where penjualan.id_kasir = kasir.id_kasir and
-> penjualan.id_penjualan = detail_penjualan.id_penjualan and
-> detail_penjualan.id_buku = buku.id_buku;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MariaDB server version for the right syntax to use near
'penjualan.id_penjualan, kasir.id_kasir, kasir.nama_kasir,
kasir.status_kasir,...' at line 2
MariaDB [tokobuku_atmaja]> create view data_penjualan as
-> select penjualan.id_penjualan, kasir.id_kasir, kasir.nama_kasir,
-> kasir.status_kasir, kasir.akses, penjualan.tanggal_penjualan,
-> buku.judul_buku, buku.stok, buku.harga_pokok, buku.harga_jual,
-> buku.diskon, detail_penjualan.id_buku, detail_penjualan.jumlah_jual
-> from penjualan, detail_penjualan, kasir, buku
-> where penjualan.id_kasir = kasir.id_kasir and
-> penjualan.id_penjualan = detail_penjualan.id_penjualan and
-> detail_penjualan.id_buku = buku.id_buku;
Query OK, 0 rows affected (0.040 sec)

MariaDB [tokobuku_atmaja]> select * from data_penjualan


-> ;
+--------------+----------+--------------+--------------+-------
+-------------------+-----------------+------+-------------+------------+--------
+---------+-------------+
| id_penjualan | id_kasir | nama_kasir | status_kasir | akses | tanggal_penjualan
| judul_buku | stok | harga_pokok | harga_jual | diskon | id_buku |
jumlah_jual |
+--------------+----------+--------------+--------------+-------
+-------------------+-----------------+------+-------------+------------+--------
+---------+-------------+
| JUAL003 | KAS003 | Chintia Dewi | Tidak Aktif | Kasir | 2022-12-16
| Goosebumps | 80 | 45000 | 65000 | 0 | B0001 |
0 |
| JUAL004 | KAS002 | Bagas | Aktif | Kasir | 2022-12-16
| Goosebumps | 80 | 45000 | 65000 | 0 | B0001 |
8 |
| JUAL001 | KAS002 | Bagas | Aktif | Kasir | 2022-12-10
| Basis Data | 90 | 55000 | 80000 | 0 | B0002 |
7 |
| JUAL002 | KAS001 | Amalia | Aktif | Admin | 2022-12-15
| Basis Data | 90 | 55000 | 80000 | 0 | B0002 |
15 |
| JUAL005 | KAS002 | Bagas | Aktif | Kasir | 2022-12-20
| Pemrograman Web | 20 | 24000 | 30000 | 0 | B0003 |
20 |
+--------------+----------+--------------+--------------+-------
+-------------------+-----------------+------+-------------+------------+--------
+---------+-------------+
5 rows in set (0.003 sec)

MariaDB [tokobuku_atmaja]> create trigger beli_buku after insert on pembelian


-> //
-> ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MariaDB server version for the right syntax to use near '//' at
line 2
MariaDB [tokobuku_atmaja]> delimiter //
MariaDB [tokobuku_atmaja]> create trigger beli_buku after insert on pembelian
-> FOR EACH ROW BEGIN
-> insert into buku set
-> id_buku = NEW.id_buku, stok = NEW.stok
-> ON DUPLICATE KEY UPDATE stok = stok + NEW.stok;
-> END //
ERROR 1054 (42S22): Unknown column 'stok' in 'NEW'
MariaDB [tokobuku_atmaja]> create trigger beli_buku after insert on pembelian
-> FOR EACH ROW BEGIN
-> insert into buku set
-> pembelian.id_buku = buku.id_buku
-> ON DUPLICATE KEY UPDATE buku.stok = buku.stok + buku.stok;
-> END //
Query OK, 0 rows affected (0.093 sec)

MariaDB [tokobuku_atmaja]> delimiter ;


MariaDB [tokobuku_atmaja]> delimiter //
MariaDB [tokobuku_atmaja]> CREATE TRIGGER tambah_stok AFTER INSERT ON pembelian
-> FOR EACH ROW BEGIN
-> UPDATE buku SET stok = stok + NEW.jumlah_beli
-> WHERE id_buku = NEW.id_buku;
-> END //
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 679
Current database: tokobuku_atmaja

Query OK, 0 rows affected (0.054 sec)

MariaDB [tokobuku_atmaja]> delimiter ;


MariaDB [tokobuku_atmaja]> insert into pembelian (id_pembelian, id_distributor,
-> id_buku, jumlah_beli, tanggal_beli) values
-> ('BELI006','DIST001','B0001', 800, '2022-11-03');
Query OK, 1 row affected (0.009 sec)

MariaDB [tokobuku_atmaja]> select * from buku;


+---------+-----------------+--------------+-------------+-------------
+--------------+------+-------------+------------+--------+
| id_buku | judul_buku | nomor_isbn | penulis | penerbit |
tahun_terbit | stok | harga_pokok | harga_jual | diskon |
+---------+-----------------+--------------+-------------+-------------
+--------------+------+-------------+------------+--------+
| B0001 | Goosebumps | 978979625012 | R.L. Stein | Gramedia | 2005
| 880 | 45000 | 65000 | 0 |
| B0002 | Basis Data | 978979736827 | Abdurrahman | Informatika | 2012
| 90 | 55000 | 80000 | 0 |
| B0003 | Pemrograman Web | 978979850136 | Adi Kunia | Andi Offset | 2016
| 23 | 24000 | 30000 | 0 |
+---------+-----------------+--------------+-------------+-------------
+--------------+------+-------------+------------+--------+
3 rows in set (0.001 sec)

MariaDB [tokobuku_atmaja]> select * from data_pembelian;


+--------------+------------------+------------------+-----------------+------
+-------------+--------------+
| id_pembelian | nama_distributor | telp_distributor | judul_buku | stok |
jumlah_beli | tanggal_beli |
+--------------+------------------+------------------+-----------------+------
+-------------+--------------+
| BELI001 | Gudang Buku | 08183275030 | Basis Data | 90 |
300 | 2022-10-25 |
| BELI002 | Gramedia | 08183929849 | Basis Data | 90 |
200 | 2022-10-27 |
| BELI003 | Cahaya Ilmu | 08102472509 | Basis Data | 90 |
250 | 2022-10-30 |
| BELI004 | Gramedia | 08183929849 | Goosebumps | 880 |
125 | 2022-11-01 |
| BELI005 | Cahaya Ilmu | 08102472509 | Pemrograman Web | 23 |
3 | 2022-11-03 |
| BELI006 | Gramedia | 08183929849 | Goosebumps | 880 |
800 | 2022-11-03 |
+--------------+------------------+------------------+-----------------+------
+-------------+--------------+
6 rows in set (0.012 sec)

MariaDB [tokobuku_atmaja]>

You might also like