Upload
ismail-adha-kesuma
View
3.030
Download
14
Embed Size (px)
Citation preview
MODUL PRAKTIKUM BASIS DATA
PROGRAM STUDI TEKNIK INFORMATIKA UNIVERSITAS ISLAM NEGERI SUNAN KALIJAGA
YOGYAKARTA
PERTEMUAN 1
MENJALANKAN MYSQL SERVER 1. Buka MS. DOS dengan jalan klik start-run.., pada menu run ketikkan CMD
kemudian enter 2. Ubah direktori C prompt menjadi C:\apache\mysql\bin\ (tergantung pada
letak file mysqld.exe yaitu mysql daemon sebagai server) 3. Ketikan mysqld lalu enter MENJALANKAN MYSQL CLIENT 1. Buka MS. DOS dengan jalan klik start-run.., pada menu run ketikkan CMD
kemudian enter 2. Ubah direktori C prompt menjadi C:\apache\mysql\bin\ (tergantung pada
letak file mysql.exe) 3. Ketikan mysql lalu enter 4. atau ketikan mysql –u user –h host –p enter, lalu masukan password (user: nama user dari mysql, host: nama komputer dimana mysql server jalan) 5. Setelah itu anda akan mendapat menu utama dari MySQL (tergantung versi
mysql yang digunakan) Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 to server version: 4.0.11agamma Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 6. Untuk keluar dari MySQL mysql> \q atau mysql> quit; MELIHAT TANGGAL & WAKTU Untuk melihat tanggal didalam MySql anda dapat melakukan dengan fungsi ”curdate()” yaitu current date. mysql>select curdate(); Sedangkan untuk melihat waktu dengan fungsi “curtime()” yaitu current time. mysql>select curtime(); Untuk melihat waktu dan sekaligus tanggal, maka fungsi yang dituliskan adalah “now()” mysql>select now(); MYSQL SEBAGAI KALKULATOR Dengan MySQL, kita tidak usah bingung ketika suatu saat kita harus menggunakan alat bantu kalkulator, karena hal ini dapat ditangani langsung oleh MySql tanpa
harus membuat program terlebih dahulu. perintah yang dituliskan adalah select rumus_perhitungan; mysql>select 5+5; TUGAS 1 1. Tuliskan hasil perintah melihat tanggal dengan menggunakan MySql 2. Tuliskan hasil perintah melihat waktu dengan menggunakan MySql 3. Tuliskan hasil perintah melihat tanggal dan waktu dengan menggunakan MySql 4. Tuliskan hasil perintah dari 10*5, 5+10, 123-100, 10/3 MELIHAT DATABASE Untuk melihat database yang telah ada atau dibuat perintah yang digunakan adalah show databases; mysql>show databases; Perintah diatas digunakan untuk melihat semua databases yang ada di dalam MySql Server, sedangkan untuk melihat databases yang sedang aktif menggunakan perintah berikut mysql>select database(); Untuk menggunakan atau masuk ke dalam suatu database yang telah dibuat perintah yang digunakan adalah “use <nama_database>;” mysql>use akademik; untuk membuka database dengan nama akademik Jika terdapat pesan “database changed”, berarti anda telah berhasil masuk ke database tersebut, tetapi jika terdapat pesan ERROR 1049:uknown database, berarti anda tidak berhasil masuk ke database tersebut. MELIHAT TABEL Untuk melihat tabel yang ada dalam suatu database perintah yang digunakan adalah mysql>show tables from <nama database>; atau bila suatu database sudah dibuka menggunakan ”use” maka perintahnya: mysql>show tables; MEMBUAT DAN MENGHAPUS DATABASE Perintah yang digunakan untuk membuat database adalah sebagai berikut: create database <nama database>; Contoh: mysql>create database akademik; Untuk menghapus database yang telah dibuat, perintah yang digunakan adalah drop database <nama database>; Contoh: mysql>drop database akademik;
TUGAS 2 1. Tuliskan perintah untuk melihat semua database yang ada dan tulis hasilnya 2. Masuklah ke salah satu database dan tuliskan tabel-tabel yang ada pada
database tersebut 3. Buatlah sebuah database dengan nama akademik, tulis perintah dan hasilnya 4. Tuliskan perintah untuk melihat database yang sudah anda buat 5. Masuklah ke dalam database yang anda buat, tulis perintah dan hasilnya 6. Hapuslah database yang anda buat, tulis perintah dan hasilnya
PRAKTIKUM 2
MEMBUAT TABEL Setelah menciptakan suatu database dan mengaktifkan database tersebut maka dapat dilakukan perintah pembuatan tabel CREATE TABLE nm_tabel (
nm_kolom1 tipe_data([ukuran]),
nm_kolom2 tipe_data([ukuran]),
...
nm_kolom_n tipe_data([ukuran]));
Contoh : CREATE TABLE mhs (
nim varchar(8),
nama varchar(30),
alamat varchar(100));
Latihan: Buatlah tabel Dosen dengan struktur sebagai berikut:
Nama kolom Tipe data
Nip Varchar(15)
Nama Varchar(30)
Tgl_lahir Date
Alamat Varchar(100)
Kemudian periksalah apakah tabel yang dibuat sudah ada dalam database! MELIHAT STRUKTUR TABEL Untuk melihat struktur tabel yang telah dibuat digunakan perintah describe <nama_tabel>;
atau
desc <nama_tabel>;
Contoh : mysql>describe produk;
Latihan: Lihatlah struktur tabel yang telah anda buat, dan tuliskan hasilnya! MENGUBAH STRUKTUR TABEL Ada empat macam perubahan dalam struktur tabel, yaitu: 1. Perubahan nama field/kolom Perubahan yang terjadi hanya pada nama field/kolom saja. Nama field/kolom lama diganti dengan nama field/kolom yang baru. alter table nm_tabel
change nm_field_lama nm_field_baru tipe_data;
Contoh : mysql>alter table mhs change nim nomhs varchar(10);
Latihan: gantilah nama kolom nama pada tabel mhs menjadi namaMhs kemudian lihatlah hasil perubahan dengan menggunakan perintah Melihat Struktur Tabel seperti pada pembahasan diatas, tulis hasilnya! 2. Perubahan tipe data Perubahan yang terjadi hanya pada tipe data yang digunakan oleh field/kolom tertentu. Tipe data baru langsung disebutkan dibelakang nama field/kolom, tanpa harus menyebutkan tipe data lama. alter table nm_tabel modify nm_field tipe_data_baru;
Contoh : mysql>alter table mhs modify nama varchar(50);
Latihan: gantilah tipe data pada field alamat pada tabel mhs dengan tipe data varchar(50) kemudian lihatlah hasil perubahan dengan menggunakan perintah Melihat Struktur Tabel seperti pada pembahasan diatas, tulis hasilnya! 3. Penambahan field Untuk menambahkan kolom baru pada tabel perintah yang digunakan adalah: alter table nm_tabel add nm_field tipe_data_baru;
Contoh : mysql>alter table mhs add tgl_lahir date;
Latihan: buatlah field baru pada tabel mhs dengan nama field ”jkel” tipe data varchar(2), kemudian lihat dan tuliskan hasil perubahannya! 4. Penghapusan field Untuk menghapus kolom pada tabel perintah yang digunakan adalah: alter table nama_tabel drop column nama_field;
Contoh : mysql>alter table mhs drop alamat;
Latihan: hapuslah field alamat pada tabel kemudian lihatlah dan tuliskan hasil perubahannya! MENGGANTI NAMA TABEL Untuk mengganti nama sebuah tabel dalam database perintah yang digunakan adalah: alter table nama_tabel_lama rename nama_tabel_baru;
Contoh : mysql>alter table mhs rename mahasiswa;
Latihan: ubahlah nama tabel mhs dengan nama mahasiswa, kemudian lihat dan tulis hasil perubahannya!
MENGHAPUS TABEL Untuk menghapus sebuah tabel dalam database perintah yang digunakan adalah: drop table <nama_tabel>;
Contoh: drop table mhs;
TUGAS: 1. Buatlah database akademik dan buatlah table mahasiswa dengan struktur
sebagai berikut:
Nama kolom Tipe data
Nim Int(30)
Nama Varchar(25)
Alamat Varchar(30)
Jk Varchar(2)
Tlp Varchar(25)
2. Dari pembuatan tabel diatas ubahlah nama field Tlp menjadi HP, lihat
struktur tabel dan tuliskan hasilnya! 3. Ubahlah tipe data tabel di atas pada field alamat menjadi Varchar(100), lihat
struktur tabel dan tuliskan hasilnya! 4. Tambahkan satu field baru dengan nama field nama_ortu tipe data
varchar(25), lihat struktur tabel dan tuliskan hasilnya! 5. Hapuslah satu field dari tabel tersebut, lihat struktur tabel dan tuliskan
hasilnya serta field apa yang anda hapus! 6. Ubahlah nama tabel tersebut dengan nama mhs, lihat hasil perubahan dengan
perintah melihat tabel yang ada, kemudian tuliskan hasilnya!
PRAKTIKUM 3
Menentukan Kunci Primer (Primary Key) Secara sederhana kunci primer digunakan untuk menyatakan bahwa suatu nilai tidak boleh ada yang sama dan nilai tersebut harus diisi (NOT NULL). Penetapan kunci primer dibuat pada saat pembuatan tabel: create table mhs (
nim varchar(8) not null primary key,
nama varchar(25),
sex char(1),
alamat varchar(30));
Memberikan nilai bawaan (Default) Jika kita tidak memberikan suatu nilai dalam kolom tertentu maka oleh sistem secara otomatis akan mengisi dengan nilai NULL. Untuk memberikan nilai default pada kolom tertentu maka pada saat pembuatan tabel dapat menggunakan perintah berikut: create table MatKul (
KD_MK varchar(10) not null primary key,
nama_MK varchar(20),
SKS int default 0);
Memasukkan Data (Insert) Ada dua cara yang dapat digunakan untuk memasukkan data kedalam tabel, yaitu: 1. insert into nama_tabel values (isi_field_1,…,isi_field_n); Contoh : insert into mhs values (‘07600001’,’budi’, ‘bantul’);
2. insert into nama_tabel (nama_field_1, nama_field_2,…,nama_field_n)
values (isi_field_1, isi_field_2,…,isi_field_n); Contoh : insert into mhs (nim,nama) values (‘07600001’,’budi’);
Latihan: Masukan data pada tabel mhs menggunakan perintah seperti di atas! Menampilkan Data (Select) Berikut ini perintah untuk menampilkan data: Select [fields] from [nama_tabel]
Where [kondisi] Order by [nama_field]
Group by [nama_field] asc / desc
Contoh : Select nim from mhs;
Select nim, nama from mhs;
Select * from mhs;
Catatan: Setelah penulisan select, [fields] dapat diganti dengan menyebutkan satu nama field saja atau beberapa field sekaligus yang dipisah dengan tanda koma (,). Penulisan field-field tersebut digunakan untuk memunculkan data dari kolom mana saja yang akan ditampilkan. Jika seluruh kolom akan ditampilkan dapat menggunakan tanda asterik (*) untuk mewakilinya. Latihan: tampilkan data yang telah dimasukkan pada latihan praktik diatas dengan mengetikkan perintah: select nim,nama from mhs;
untuk menampilkan nim dan nama mahasiswa Select * from mhs;
Untuk menampilkan semua data mahasiswa Mengurutkan Tampilan Klausa ORDER BY digunakan untuk mengurutkan hasil. Jika menginginkan data ditampilkan urut berdasarkan pada urutan terkecil ke besar, dapat menggunakan ASC (ascending). Sedangkan untuk mengurutkan data berdasarkan yang terbesar ke kecil, dapat menggunakan DESC (descending). Latihan : tampilkan data dari tabel yang telah dibuat diatas dengan menggunakan model urut sesuai no secara descending, dengan mengetikkan perintah: select * from mhs order by nim desc;
Mengubah Data (Update) Perintah yang digunakan untuk merubah data adalah: Update nama_tabel
set nama_field_1=isi_baru_1,
nama_field_2=isi_baru_2,
...,
nama_field_n=isi_baru_n
Where kriteria;
Contoh : Update mhs set alamat=’DIY’
where alamat=’yogya’;
Latihan: ubahlah nama mahasiswa dengan nim=’07650001’ menjadi ‘Ahmad’. Lihat hasilnya dengan menampilkan isi tabel!
TUGAS: 1. Buatlah sebuah tabel mahasiswa dengan struktur berikut, lihat strukturnya
dan tulis hasilnya!
Nama kolom Tipe data
Nim varchar(8)
Nama Varchar(30)
alamat Varchar(50)
2. Isikan data berikut ke dalam tabel tersebut! Tulis perintah dan hasilnya!
Nim Nama alamat
07650001 Budi Bantul
07650002 Ari Bantul
07650003 Ahmad Sleman
07650004 Desi Sleman
3. Tampilkan data nama dan alamat mahasiswa saja dari tabel tersebut! Tulis
perintah dan hasilnya! 4. Tampilkan data mahasiswa terurut berdasarkan nama!tulis perintah dan
hasilnya! 5. Ubah data mhs yang alamatnya=’bantul’ menjadi alamatnya=’kulon progo’!
tulis perintah dan hasilnya!
PERTEMUAN 4 OPERATOR RELASIONAL Operator yang digunakan yntuk perbandingan antara dua buah nilai. Jenis dari operator ini adalah = , >, <, >=, <=, <> Latihan: (tulis hasilnya) select * from mhs where alamat=’sleman’;
select * from mhs where jml_saudara > 5;
Operator BETWEEN dan NOT BETWEEN Operator between ini untuk menangani operasi “jangkauan” Latihan: (tulis hasilnya) select * from mhs
where tgl_lhr between '1980-01-01' and '1982-12-29';
Operator LIKE Operator LIKE atau NOT LIKE sangat bermanfaat dalam mencari suatu data. Operasi ini digunakan dengan menyebutkan tanda wildcard berupa garis bawah (_) atau (%). Tanda garis bawah (_) berarti sebuah karakter apa saja. Contoh a_u cocok dengan anu,aku,alu,abu dan tidak cocok untuk andu,ambu ataupun allu. Tanda % berarti cocok dengan kata apa saja dan berapapun panjangnya Latihan: (tulis hasilnya) select nim,nama,alamat from mhs where nama like 'a%';
TUGAS:
1. Buatlah tabel seperti berikut:
Nama kolom Tipe data
Kode Int(10)
Nama Varchar(25)
Harga Int(11)
Isikan data sebagai beikut:
Kode Nama Harga
A Sampho 1000
B Deterjen 1000
C Sabun mandi 1500
D Pasta gigi 5000
E Sabun cuci 1200
2. Tampilkan data yang harganya lebih dari 1000! Tulis perintah dan hasilnya!
3. Tampilkan data yang harganya antara 1000 - 3000! Tulis perintah dan
hasilnya!
4. Tampilkan data yang namanya mengandung kata ‘sabun’! Tulis perintah dan
hasilnya!
PERTEMUAN 5
OPERATOR AND dan OR
And dan or menggabungkan dua atau lebih kondisi pada klause where. Operator
and menampilkan data jika semua kondisi yang diminta bernilai benar, sedangkan
operator or menampilkan data jika ada kondisi yang benar.
Select * from <nama_tabel>
Where <kondisi1> and <kondisi2>
Latihan: (tulis hasilnya)
Select * from mhs
Where nama=’budi’ and alamat=’bantul’;
TUGAS:
1. Buatlah tabel seperti berikut:
Nama kolom Tipe data
Kode Int(10)
Nama Varchar(25)
Harga Int(11)
Isikan data sebagai berikut:
Kode Nama Harga
A Sampho 1000
B Deterjen 1000
C Sabun mandi 1500
D Pasta gigi 5000
E Sabun cuci 1200
2. Tampilkan data yang namanya sabun cuci atau harga lebih besar dari 1000,
tuliskan hasilnya!
3. Tampilkan data yang namanya sabun mandi atau harganya 1000, tuliskan
hasilnya!
4. Buatlah tabel sesuai kreasi anda dan lakukan perintah-perintah yang
mengandung and dan or serta tulis hasilnya!
PRAKTIKUM 6
MySQL mempunyai kemampuan untuk menggabungkan dua tabel atau lebih guna
mendapatkan informasi yang diinginkan. Proses yang dilakukan dengan nama
JOIN. Dalam penggabungan dari beberapa tabel (join) ada beberapa hal yang
perlu diperhatian, antara lain :
1. Setiap kolom disebutkan dengan bentuk,
2. tabel-tabel yang dilibatkan dalam queri perlu disebutkan dalam Klausa FROM
dengan antar tabel dipisah oleh koma.
3. Kondisi dalam WHERE menetukan macam join yang terbentuk
Macam-macam bentuk Penggabungan (Join)
1. CROSS JOIN
Cross Join merupakan bentuk penggabungan yang paling sederhana, tanpa ada
kondisi.
SELECT field1,field2 FROM Tabel1 CROSS JOIN tabel2;
2. INNER JOIN
Hampir sama dengan cross join tetapi diikuti dengan kondisi
SELECT Field FROM tabel1 INNER JOIN tabel 2 ON kondisi
Contoh:
select * from mhs inner join nilai on mhs.nim=nilai.nim;
3. STRAIGHT JOIN
Straight Join identik dengan inner join tetapi tidak mengenal klausa where
SELECT field FROM Tabel1 SATRIGHT JOIN tabel2
4. LEFT (OUTER) JOIN
Akan menampilkan tabel disebelah kanannya (dalam hal ini tabel nilai) dengan
NULL jika tidak terdapat hubungan antara tabel disebelah kiri (dalam hal ini
tabel siswa)
SELECT field FROM tabel1 LEFT JOIN tabel2 ON kondisi
Contoh:
select mhs.nim,nama,nilai
from mhs left join nilai on mhs.nim=nilai.nim;
5. RIGHT/OUTER JOIN
Kebalikan dari LEFT JOIN, jika tidak menemukan hubungan dengan tabel
disebelah kiri maka akan ditampilkan NULL
SELECT field FROM tabel1 RIGHT JOIN tabel2 ON kondisi
Contoh:
select mhs.nim,nama,nilai
from mhs right join nilai on mhs.nim=nilai.nim;
Latihan:
Buatlah tabel mahasiswa dan tabel nilai berikut:
Nim Nama Alamat
123 Heny Jakarta
124 Ayu Bandung
125 Dewi Surabaya
126 Dedi Surabaya
127 Adrian Bandung
Nim mtkuliah Nilai
123 Algoritma A
124 Basis Data B
125 Algoritma A
126 Basis Data A
127 Sistem Operasi A
TUGAS:
1. Buatlah tabel barang dan tabel harga, dan isikan datanya minimal 5 data,
tampilkan data dari kedua tabel tersebut dan tuliskan hasilnya!
2. Dari tabel tersebut gabungkan kedua tabel tersebut dengan menggunakan
metode inner join, right join, left join dan cros join kemudian tuliskan hasilnya!
PERTEMUAN 7
STORED PROCEDURES
Stored Procedure adalah kumpulan bahasa SQL yang dikumpulkan dalam sebuah
prosedur dalam basis data untuk keperluan akses database atau keperluan
lainnya seperti kalkulasi data atau tampilan data.
MENGAPA STRORED PROCEDURE
Dengan stored procedure eksekusi menjadi cepat. Tidak ada kompilasi.
Peningkatan kecepatan datang dari reduksi lalu-lintas jaringan. Jika ada
pekerjaan pengecekan berulang, looping, multiple statement, dikerjakan dengan
pemanggilan tunggal ke prosedur yang telah disimpan ke server. Stored
Procedure adalah komponen. Andaikan aplikasi kemudian ditulis dalam bahasa
berbeda, tidak ada masalah, karena logika berada didalam database bukan dalam
aplikasi.
MENCIPTAKAN STORED PROCEDURE
Untuk membuat stored procedure, terlebih dahulu kita harus menentukan
delimiter. Delimiter tujuannya agar pada saat pembuatan prosedur tidak
terganggu. Karena secara default MySQL menggunakan titik-koma sebagai
delimiter dan pada pemograman procedural MySQL menggunakan titik-koma juga
maka diperlukan delimiter lain selain titik-koma. Perlu diketahui delimiter
adalah suatu tanda yang menyebabkan mesin MySQL mengeksekusi sql yang kita
inputkan. Dalam contoh ini saya menggunakan / sebagai delimiter.
mysql> delimiter /
Untuk membuat SP kita memerlukan perintah
CREATE PROCEDURE <nama SP>(<parameter input output jika
ada>).
Di dalam SP selalu dimulai dengan BEGIN dan END;. CREATE PROCEDURE procedure1 /* nama */
() /* parameter */
BEGIN /* awal blok */
SELECT * FROM table1; /* statement */
END; /* akhir blok */
/ /* diakhiri dengan delimiter
*/
Untuk memanggil procedure tersebut gunakan
mysql> call procedure1()/
Statement dalam blok dapat diganti dengan yang akan diberlakukan kepada SP.
Contoh untuk memasukkan variable pada table1.
INSERT INTO table1 VALUES (variable1);
Perintah di bawah ini berguna untuk menghapus SP yang telah dibuat.
mysql> delimiter /
mysql> drop procedure procedure1/
Tugas :
1. Buat procedure untuk menampilkan data pegawai dengan jabatan tertentu!
2. Buat procedure untuk insert data ke table pegawai!
3. Buat procedure untuk melakukan insert data dan sekaligus menampilkan data
pada table pegawai!
4. Buat procedure untuk melakukan update data dan sekaligus menampilkannya!
5. Buat procedure untuk melakukan delete data!