Upload
cahkos
View
190
Download
1
Embed Size (px)
DESCRIPTION
laporan praktikum
Citation preview
LAPORAN PRAKTIKUM
BASIS DATA
MODUL 5 & 6
Oleh :
NAMA:-
NIM:-
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN
KOMPUTER
AKAKOM
Yogyakarta
2012
MODUL 5
I. TUJUAN
Pada Modul ini membahas tentang suatu bahasa prosedural MySQL untuk
keperluan pengaksesan data lebih lanjut. Penggunaan bahasa ini memungkinkan
untuk melakukan operas! tertentu terhadap basis data sehingga kondisi
pengaksesan data yang kompleks bisa ditangani.
II. PENJELASAN LISTING
mysql> use bank;
perintah diatas adalah untuk menggunakan database bank.apabila berhasil maka akan
memberikan konfirmasi:
Database changed
mysql> select *from saldo_nasabah;
menampilkan semua field yang ada di table saldo_nasabah.hasilnya:
+-----------+--------------+
| no_reck | jumlah_saldo |
+-----------+--------------+
| 095410168 | 6000000 |
| 095410186 | 8000000 |
| 095410182 | 1200000 |
+-----------+--------------+
mysql> select *from nasabah;
menampilkan semua field yang ada di table nasabah.hasilnya:
+-----------+--------------+-------------------+---------------+
| no_reck | nama_nasabah | alamat | jenis_kelamin |
+-----------+--------------+-------------------+---------------+
| 095410168 | purwant | bantul jogjakarta | L |
| 095410186 | damar | sleman jogjakarta | L |
| 095410182 | roro | bantul jogjakarta | P |
+-----------+--------------+-------------------+---------------+
3 rows in set (0.00 sec)
3 rows in set (0.00 sec)
mysql> CREATE PROCEDURE `tambah_nsabah`(noreck varchar(10),nm varc
archar(70),jenis char(1))
perintah diatas mencoba membuat SP dengan nama tambah_nasabah yang mana memiliki
sebuah variable norek & nm yang memiliki tipe data varchar dan variable jenis yang memiliki tipe
data integer.
1. BEGIN//memulai Perintah Procedure.
2. insert into nasabah value(noreck,nm,almt,jenis);
3. insert into saldo_nasabah value(noreck,200000);
4. END$$//mengakhiri Perintah Procedure.
ERROR 1304 (42000): PROCEDURE tambah_nsabah already exists
mysql> DELIMITER ;
//delimiter berfungsi memberi tahu kepada myql soal delimiter yang digunakan, secara default
menggunakan ;
mysql> call tambah_nsabah('095410166','baru','semarang','P');
procedure tambah_nsabah
Query OK, 1 row affected (0.00 sec)
mysql> select *from nasabah;//menampilkan semua field dari table nasabah
+-----------+--------------+-------------------+---------------+
| no_reck | nama_nasabah | alamat | jenis_kelamin |
+-----------+--------------+-------------------+---------------+
| 095410168 | purwant | bantul jogjakarta | L |
| 095410186 | damar | sleman jogjakarta | L |
| 095410182 | roro | bantul jogjakarta | P |
| 095410166 | baru | semarang | P |
+-----------+--------------+-------------------+---------------+
4 rows in set (0.00 sec)
mysql> select *from saldo_nasabah; digunakan untuk menampilkan semua field dari table
saldo nasabah.
+-----------+--------------+
| no_reck | jumlah_saldo |
+-----------+--------------+
| 095410168 | 6000000 |
| 095410186 | 8000000 |
| 095410182 | 1200000 |
| 095410166 | 200000 |
+-----------+--------------+
4 rows in set (0.00 sec)
mysql> select ceksaldo('095410168'); menampilkan saldo dari nasbah yang memiliki no rek
095410168
+-----------------------+
| ceksaldo('095410168') |
+-----------------------+
| 6000000 |
+-----------------------+
1 row in set (0.03 sec)
mysql> select nama_nasabah ,ceksaldo(no_reck) from nasabah ;
menampilkan nama nasabah dan slado dari table nasabah
+--------------+-------------------+
| nama_nasabah | ceksaldo(no_reck) |
+--------------+-------------------+
| purwant | 6000000 |
| damar | 8000000 |
| roro | 1200000 |
| baru | 200000 |
+--------------+-------------------+
4 rows in set (0.00 sec)
mysql> call tambah$$ penggunaan store procedure
+-----+
| 7+9 |
+-----+
| 16 |
+-----+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Tugas.
MODUL 6
mysql> create database mod6;
di atas adlah perintah untuk membuat database baru bernama mod6
Query OK, 1 row affected (0.00 sec)
mysql> use mod6;
scrip di atas adalah perintah untuk menggunakan database bank.apabila berhasil maka akan
memberikan konfirmasi:
Database changed
mysql> CREATE TABLE `barang` (
diatas merupakan perintah untuk membuat table baru bernama barang dengan ketentuan sbb:
o `kd_barang` varchar(4) NOT NULL,
field kd_barang bertipe varchar dengan ukuran 4.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)
o `nama_barang` varchar(30) NOT NULL,
field nama_barang bertipe varchar dengan ukuran 30.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)
o harga` int(11) NOT NULL
field harga bertipe int(integer) dengan ukuran 11.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)
ENGINE=MyISAM DEFAULT CHARSET=utf8;//mengubah mesin mysql menjadi myisamp.
Query OK, 0 rows affected (0.03 sec)
mysql> INSERT INTO `barang` VALUES ('H01', 'HARDISK SEAGET', 500000);
menginputkan data ke table batang . isinya:kd_barang:H01;nama_barang:Hardisk
Seagat;Harga:5000000;
Query OK, 1 row affected (0.02 sec)
mysql> INSERT INTO `barang` VALUES ('R01', 'RAM POWER', 250000);
menginputkan data ke table batang . isinya:kd_barang:R01;nama_barang:Ram Power;Harga:250000;
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO `barang` VALUES ('M01', 'MONITOR LG', 500000);
menginputkan data ke table batang . isinya:kd_barang:M01;nama_barang:Monitor lg;Harga:5000000;
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO `barang` VALUES ('M02', 'MONITOR ACCER', 650000);
menginputkan data ke table batang . isinya:kd_barang:M02;nama_barang:Monitor Accer;Harga:6500000;
Query OK, 1 row affected (0.00 sec)
mysql> select *from barang;
menampilkan semua field yang terdapat di table barang
+-----------+----------------+--------+
| kd_barang | nama_barang | harga |
+-----------+----------------+--------+
| H01 | HARDISK SEAGET | 500000 |
| R01 | RAM POWER | 250000 |
| M01 | MONITOR LG | 500000 |
| M02 | MONITOR ACCER | 650000 |
+-----------+----------------+--------+
4 rows in set (0.00 sec)
mysql> CREATE TABLE `pelanggan` (
perintah di atas merupakan perintah untuk membuat table baru bernama pelanggan dengan ketentuan sbb:
kd_pelanggan` varchar(4) NOT NULL,
field kd_pelanggan bertipe varchar dengan ukuran 4.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)
nama` varchar(30) NOT NULL,
field nama bertipe varchar dengan ukuran 30.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai).
`alamat` varchar(50) NOT NULL,
field alamat bertipe varchar dengan ukuran 4.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)
telp` varchar(12) NOT NULL,
field telp bertipe varchar dengan ukuran 12.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)-> ) ENGINE=MyISAM DEFAULT CHARSET=utf8;//mengubah mesin yang digunakan mysql enjadi myIsmap
Query OK, 0 rows affected (0.03 sec)
mysql> INSERT INTO `pelanggan` VALUES ('P01', 'RISMA', 'BANTUL,YOGYA', '095410166');
menginputkan data kedalam table pelanggan.
isinya:kd_pelanggan:P01;nama:Risma;Alamat:Bantul,yogya;telp:095410166
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO `pelanggan` VALUES ('P02', 'DUDIK', 'SLEMAN, YOGYA', '095410167');
menginputkan data kedalam table pelanggan.
isinya:kd_pelanggan:P02;nama:dudik;Alamat:sleman,yogya;telp:095410167
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO `pelanggan` VALUES ('P03', 'SUMAMI', 'WEST PROG', '095410168');
menginputkan data kedalam table pelanggan.
isinya:kd_pelanggan:P03;nama:Sumami;Alamat:westprog;telp:095410168
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO `pelanggan` VALUES ('P04', 'PAIJO', 'SOUTH MOUNTAIN', '095410169');
menginputkan data kedalam table pelanggan.
isinya:kd_pelanggan:P04;nama:Paijo;Alamat:south mounain;telp:095410169
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * from pelanggan; //menampilkan semua field dari table pelnggan
+--------------+--------+----------------+-----------+
| kd_pelanggan | nama | alamat | telp |
+--------------+--------+----------------+-----------+
| P01 | RISMA | BANTUL,YOGYA | 095410166 |
| P02 | DUDIK | SLEMAN, YOGYA | 095410167 |
| P03 | SUMAMI | WEST PROG | 095410168 |
| P04 | PAIJO | SOUTH MOUNTAIN | 095410169 |
+--------------+--------+----------------+-----------+
4 rows in set (0.00 sec)
mysql> CREATE TABLE `pemesanan` (
scrip di atas merupakan perintah untuk membuat table baru bernama pemesanan dengan ketentuan sbb:
`kd_barang` varchar(4) NOT NULL,
field kd_barang bertipe varchar dengan ukuran 4.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)
kd_pelanggan` varchar(4) NOT NULL,
field kd_pelanggan bertipe varchar dengan ukuran 4.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)
tgl_pesan` date NOT NULL,
field tgl_pesan bertipe date.arti dari not null adlah field ini tidak boleh berisi null(tidak memiliki nilai)
-> `jumlah` int(11) NOT NULL
-> ) ENGINE=MyISAM DEFAULT CHARSET=utf8; //mengubah mesin mysql menjadi myisamp.
Query OK, 0 rows affected (0.03 sec)
mysql> INSERT INTO `pemesanan` VALUES ('H01', 'P03', '2012-03-06', 1);
menginputkan data kedalam table pemesanan.
isinya:kd_barang:H01;kd_pelanggan:P03;tgl_pesan:2012-03-06;jumlah:1
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO `pemesanan` VALUES ('M02', 'P03', '2011-12-20', 2);
menginputkan data kedalam table pemesanan.
isinya:kd_barang:M02;kd_pelanggan:P03;tgl_pesan:2011-12-20;jumlah:2
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO `pemesanan` VALUES ('M01', 'P01', '2012-04-18', 3);
menginputkan data kedalam table pemesanan.
isinya:kd_barang:M01;kd_pelanggan:P01;tgl_pesan:2012-04-18;jumlah:3
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO `pemesanan` VALUES ('M02', 'P02', '2010-04-12', 1);
menginputkan data kedalam table pemesanan.
isinya:kd_barang:M02;kd_pelanggan:P02;tgl_pesan:2012-04-12;jumlah:1
Query OK, 1 row affected (0.00 sec)
mysql> select *from pemesanan;//menampilkan semua field dari table pemesanan
+-----------+--------------+------------+--------+
| kd_barang | kd_pelanggan | tgl_pesan | jumlah |
+-----------+--------------+------------+--------+
| H01 | P03 | 2012-03-06 | 1 |
| M02 | P03 | 2011-12-20 | 2 |
| M01 | P01 | 2012-04-18 | 3 |
| M02 | P02 | 2010-04-12 | 1 |
+-----------+--------------+------------+--------+
4 rows in set (0.00 sec)
mysql> select nama from pelanggan
-> where kd_pelanggan
-> in
-> (select kd_pelanggan from pemesanan);
perintah untuk menampilkan field nama dari table pelanggan yang memesan barang.
+--------+
| nama |
+--------+
| RISMA |
| DUDIK |
| SUMAMI |
+--------+
3 rows in set (0.00 sec)
mysql> select nama from pelanggan
-> where kd_pelanggan
-> not in
-> (select kd_pelanggan from pemesanan);
menampilkan nama pelanggan yang tidak memesan barang.
+-------+
| nama |
+-------+
| PAIJO |
+-------+
1 row in set (0.00 sec)
mysql> select nama from pelanggan
-> where exists
-> (select kd_pelanggan from pemesanan where pelanggan.kd_pelanggan=pemesana
n.kd_pelanggan);
menampilkan nama pemesan yang ada di table pemesanan dan pelanggan.
+--------+
| nama |
+--------+
| RISMA |
| DUDIK |
| SUMAMI |
+--------+
3 rows in set (0.00 sec)
mysql> select kd_barang from pemesanan
-> where kd_barang='M02'
-> union
-> select jumlah from pemesanan
-> where kd_barang='m02';
menggabungkan menjadi satu kolom dari tabel kd_barang & pemesanan.disini yang di tampilkan adalah yang kode barangnya m02.
+-----------+
| kd_barang |
+-----------+
| M02 |
| 2 |
| 1 |
+-----------+
3 rows in set (0.00 sec)
mysql> select * from barang
-> into outfile 'D:/backupBarang.txt'
-> fields terminated by'.';
Query OK, 4 rows affected (0.00 sec)
perintah untuk menyimpan data yang ada di dalam table barang kedalam direktori dengan nama file backupBarang.txt
mysql> select date(now());
perintah untuk melihat waktu sekarang(pada saat praktikum berlangsung)
+-------------+
| date(now()) |
+-------------+
| 2012-11-21 |
+-------------+
1 row in set (0.02 sec)
TUGAS.
Lakukan minimal 5 subquery.