//
you're reading...
Sistem Manajemen Basis Data

Latihan Database MySQL

Modul 1

Tugas 1

Membuat database pethouse

mysql> CREATE DATABASE pethouse;

Query OK, 1 row affected (0.00 sec)

mysql> USE pethouse

Database changed

1

Membuat table event pada database pethouse

mysql> CREATE TABLE event

-> (name VARCHAR(20),date DATE,type VARCHAR(15),remark VARCHAR(255));

Query OK, 0 rows affected (0.14 sec)

 

2

 

Tugas 2

Mengisi table event menggunakan perintah insert

mysql> INSERT INTO event VALUES

-> (‘Fluffy’,’1995-05-15′,’litter’,’4 kittens, 3 female, 1 male’),

-> (‘Buffy’,’1993-06-23′,’litter’,’5 puppies, 2 female, 3 male’),

-> (‘Buffy’,’1994-06-19′,’litter’,’3 puppies, 3 female’),

-> (‘Chirpy’,’1999-03-21′,’vet’,’needed beak straightened’);

Query OK, 4 rows affected (0.03 sec)

Records: 4  Duplicates: 0  Warnings: 0

3

 

Tugas 3

Mengisi table event menggunakan perintah load data

mysql> LOAD DATA LOCAL INFILE ‘E://Book1.txt’ INTO TABLE event;

4

 

5

 

6

 

Modul 4

Tugas 1

mysql> CREATE VIEW view1 AS

-> SELECT CONCAT(first_name,” “,last_name)

-> AS name,salary,city,job.title as job_desc

-> FROM employee_join left join job on job.job_id=employee_join.job_id;

Query OK, 0 rows affected (0.08 sec)

7

 

Tugas 2

mysql> CREATE VIEW view2 AS

-> SELECT job.title AS job_desc,COUNT(*) AS

-> emp_count FROM job left join employee_join on

-> job.job_id=employee_join.job_id GROUP BY employee_join.job_id;

Query OK, 0 rows affected (0.05 sec)

8

 

Tugas 3

mysql> delimiter !

mysql> create trigger log_employee after delete

-> on employee_join

-> for each row

-> begin

-> insert into employee_bak values

-> (old.id,old.first_name,old.last_name,old.start_date,old.end_date,old.salary,old.city,old.job_id);

-> end !

Query OK, 0 rows affected (0.41 sec)

mysql> delimiter ;

9

 

10

 

Modul 5

Tugas1

mysql> delimiter !

mysql> create function GabungNama

-> (in_last_name varchar(20), in_first_name varchar(20))

-> returns varchar(40)

-> begin

-> return concat(in_last_name,’ ‘,in_first_name);

-> end !

Query OK, 0 rows affected (0.08 sec)

11

 

12

 

Tugas 2

mysql> delimiter !

mysql> CREATE PROCEDURE empJob(IN idname int)

-> BEGIN

-> SELECT first_name,last_name,job.title

-> FROM employee_join LEFT JOIN job ON

-> job.job_id=employee_join.job_id

-> WHERE id like idname;

-> end !

Query OK, 0 rows affected (0.00 sec)

mysql> delimiter ;

13

 

Modul 6

Soal 1

mysql> create table instruktur (nip char(6)primary key, namains varchar(20),jurusan varchar(20),asalkota varchar(20));

Query OK, 0 rows affected (0.13 sec)

14

 

mysql> create table matakuliah(nomk char(6)primary key,namamk varchar(30),sks int);

Query OK, 0 rows affected (0.13 sec)

15

 

mysql> create table kuliah(nip char(6),nomk char(6),ruangan char(5),jmlmhs int,foreign key(nip)references instruktur(nip),foreign key(nomk)references matakuliah(nomk));

Query OK, 0 rows affected (0.20 sec)

16

 

Soal 2

a)      Instruktur-instruktur jurusan ‘Ilmu Komputer’

mysql> select*from instruktur where jurusan=’Ilmu Komputer’;

17

 

b)      Nomor mata kuliah yang pesertanya lebih dari 40 orang

mysql> select matakuliah.nomk from matakuliah join kuliah on matakuliah.nomk=kuliah.nomk where jmlmhs>40;

18

 

c)      Nomor dan mata kuliah yang pesertanya lebih dari 40 orang

mysql> select matakuliah.nomk,matakuliah.namamk from matakuliah join kuliah on matakuliah.nomk=kuliah.nomk where jmlmhs>40;

19

 

 

d)      nip instruktur yang mengampu mata kuliah dengan nomor ‘KOM102′

mysql> select instruktur.nip from instruktur join kuliah on instruktur.nip=kuliah.nip where nomk=’KOM102′;

20

 

e)      nip instruktur yang mengampu mata kuliah ‘Basis Data’

mysql> select kuliah.nip from kuliah join matakuliah on kuliah.nomk=matakuliah.nomk where namamk=’Basis Data’;

21

 

 

f)      nip dan nama instruktur yang mengampu mata kuliah ‘Basis Data’

mysql> select instruktur.nip,instruktur.namains from instruktur join matakuliah join kuliah on instruktur.nip=kuliah.nip and  matakuliah.nomk=kuliah.nomk where namamk=’Basis Data’;

22

 

g)      Nama mata kuliah dan ruangan yang diampu oleh ‘Steve Jobs’

mysql> select matakuliah.namamk,kuliah.ruangan from instruktur join matakuliah join kuliah on instruktur.nip=kuliah.nip and  matakuliah.nomk=kuliah.nomk where namains=’Steve Jobs’;

23

 

h)      Jumlah total mahasiswa yang diampu oleh ‘Steve Wozniak’

mysql> select sum(kuliah.jmlmhs) from kuliah join instruktur on kuliah.nip=instruktur.nip where namains=’Steve Wozniak’;

24

 

i)         Nomor dan nama instruktur yang mengampu mahasiswa terbanyak

25

 

j)          Nomor dan nama instruktur yang belum mengampu mata kuliah apapun

26

 

Soal 3

a)          Nomor dan nama instruktur yang belum mengampu mata kuliah apapun

27

 

Soal 4

28

 

mysql> delimiter ;

mysql> delimiter !

mysql> create trigger log_roomChanges after update

-> on kuliah

-> for each row

-> begin

-> insert into roomChanges values(user(),concat

-> (‘Merubah ruangan’,new.ruangan,’dari ruangan’,’ ke ruang ‘,old.ruangan));

-> end !

Query OK, 0 rows affected (0.41 sec)

29

 

Soal 5

a) Fungsi untuk menampilkan jumlah kuliah yang diadakan di sebuah ruangan (nama ruangan

dimasukkan sebagai input)

30

 

b) Fungsi untuk mendapatkan nama ruangan tempat sebuah mata kuliah diadakan (nomor mata

kuliah dimasukkan sebagai input). Berikan nilai ‘not found’ jika sebuah mata kuliah belum diberi

ruangan.

31

 

c) Prosedur untuk menampilkan nama mata kuliah dan ruangan yang diampu oleh seorang

instruktur (nama instruktur dimasukkan sebagai input)

32

d) Prosedur untuk menampilkan jumlah SKS yang diampu oleh seorang instruktur (nama

instruktur dimasukkan sebagai input)

33

 

 

Diskusi

Belum ada komentar.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

komunitas menembak

%d blogger menyukai ini: