You are on page 1of 8

TUGAS I

PRAKTIKUM SN_2
Sistem Manajemen Basis Data

Disusun oleh :
Nama

Ririn Septrisulviani

NIM

131.05.1060

Jurusan

Teknik Informatika

Mata Kuliah

Sistem Manajemen Basis Data

Institut Sains dan Teknologi AKPRIND


Yogyakarta
2014

SOAL DAN JAWABAN


1. Buatlah database baru dengan nama <nama_namakel> contoh : ririn_sn2
mysql> show databases; //Tampilkan dulu database yang ada agar tidak ada
kerangkapan database (agar tidak terjadi error)
+--------------------+
| Database
|
+--------------------+
| information_schema |
| mysql
|
| performance_schema |
| sakila
|
| test
|
| world
|
+--------------------+
6 rows in set (0.00 sec)
mysql> create database ririn_sn2; //Buat database baru dengan nama ririn_sn2;
Query OK, 1 row affected (0.00 sec) //Database berhasil dibuat
mysql> show databases; //Kolom database ditampilkan kembali untuk
memastikan nama database yang baru dibuat sudah tercantum apa belum
+--------------------+
| Database
|
+--------------------+
| information_schema |
| mysql
|
| performance_schema |
| ririn_sn2
|
| sakila
|
| test
|
| world
|
+--------------------+
7 rows in set (0.00 sec)
2. Buatlah tabel sesuai dengan ketentuan berikut ini :
a. t_dosen ( tabel induk )
+------------+-------------+------+-----+---------+-------+
| Field
| Type
| Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| id_dosen | varchar(8) | NO | PRI | NULL |
|
| nama_dosen | varchar(50) | YES |
| NULL |
|
| alamat
| varchar(50) | YES |
| NULL |
|
+------------+-------------+------+-----+---------+-------+
mysql> use ririn_sn2; //Men-select database yang akan digunakan
Database changed //Berhasil diubah

mysql> create table t_dosen(id_dosen varchar(8) primary key, nama_dosen


varchar(50), alamat varchar(50)); //Membuat table induk dengan primary key
pada field id_dosen
Query OK, 0 rows affected (3.11 sec) //Table berhasil dibuat
mysql> show tables; //Menampilkan table yang sudah dibuat
+---------------------+
| Tables_in_ririn_sn2 |
+---------------------+
| t_dosen
|
| t_matkul
|
+---------------------+
2 rows in set (0.00 sec)
mysql> desc t_dosen; //Melihat hasil table yang dibuat
+------------+-------------+------+-----+---------+-------+
| Field
| Type
| Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| id_dosen | varchar(8) | NO | PRI | NULL |
|
| nama_dosen | varchar(50) | YES |
| NULL |
|
| alamat
| varchar(50) | YES |
| NULL |
|
+------------+-------------+------+-----+---------+-------+
3 rows in set (2.77 sec)
b. t_matkul ( tabel anak )
+-------------+-------------+------+-----+---------+-------+
| Field
| Type
| Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| id_matkul | varchar(8) | NO | PRI | NULL |
|
| nama_matkul | varchar(20) | YES |
| NULL |
|
| id_dosen | varchar(8) | YES | MUL | NULL |
|
| kelas
| varchar(4) | YES |
| NULL |
|
+-------------+-------------+------+-----+---------+-------+
mysql> create table t_matkul(id_matkul varchar(8) primary key, nama_matkul
varchar(20), id_dosen varchar(8), kelas varchar(4), foreign key(id_dosen)
references t_dosen(id_dosen)); //Membuat table anak dengan primary key pada
field id_matkul dan foreign key pada field id_dosen yang merelasikan table induk
dengan table anak
Query OK, 0 rows affected (3.58 sec) //Tabel berhasil dibuat
mysql> desc t_matkul; //Melihat hasil table yang dibuat
+-------------+-------------+------+-----+---------+-------+
| Field
| Type
| Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| id_matkul | varchar(8) | NO | PRI | NULL |
|
| nama_matkul | varchar(20) | YES |
| NULL |
|
| id_dosen | varchar(8) | YES | MUL | NULL |
|
| kelas
| varchar(4) | YES |
| NULL |
|
+-------------+-------------+------+-----+---------+-------+

4 rows in set (0.01 sec)


3. Isilah kedua tabel, masing masing tabel minimal 5 baris record
Tabel t_dosen (table induk)
mysql> insert into t_dosen values ('5115502','Dra.Hj.Winarni, MM','Bantul'),
('51509690','Endang
Widuri
Asih,
ST.,
MT.','Sleman'),
('52512550','Drs.Sidarto.,MEng.','Kepuh'),('52412700','Imam
Sodikin,
ST.,
MT.','Magelang'),('51109610','Ir.Joko Susetyo., MT','Solo'); //Mengisi data pada
table induk (t_dosen) sebanyak 5 baris record
Query OK, 5 rows affected (3.39 sec) //Data berhasil diinput
Records: 5 Duplicates: 0 Warnings: 0
mysql> select *from t_dosen; //Melihat hasil table yang telah dibuat
+----------+------------------------------+----------+
| id_dosen | nama_dosen
| alamat |
+----------+------------------------------+----------+
| 51109610 | Ir.Joko Susetyo., MT
| Solo
|
| 5115502 | Dra.Hj.Winarni, MM
| Bantul |
| 51509690 | Endang Widuri Asih, ST., MT. | Sleman |
| 52412700 | Imam Sodikin, ST., MT.
| Magelang |
| 52512550 | Drs. Sidarto., MEng.
| Kepuh |
+----------+------------------------------+----------+
5 rows in set (0.01 sec)
Tabel t_matkul (table anak)
mysql> insert into t_matkul values ('MK 001','Matematika Diskrit',
'5115502','B215'),('MK 002','Logika Informatika','51509690',
'S107'),('MK
003','Sistem
Operasi','52512550','B203'),('MK
004',
'Kewarganegaraan','52412700','B111'),('MK 005','Jaringan Komputer',
'51109610','B112'); //Mengisi data pada table anak (t_matkul) sebanyak 5 baris
record
Query OK, 5 rows affected (0.20 sec) //Data berhasil diinput
Records: 5 Duplicates: 0 Warnings: 0
mysql> select *from t_matkul; //Melihat hasil table yang telah dibuat
+-----------+--------------------+----------+-------+
| id_matkul | nama_matkul
| id_dosen | kelas |
+-----------+--------------------+----------+-------+
| MK 001 | Matematika Diskrit | 5115502 | B215 |
| MK 002 | Logika Informatika | 51509690 | S107 |
| MK 003 | Sistem Operasi
| 52512550 | B203 |
| MK 004 | Kewarganegaraan | 52412700 | B111 |
| MK 005 | Jaringan Komputer | 51109610 | B112 |
+-----------+--------------------+----------+-------+
5 rows in set (0.00 sec)
4. Gantilah nama kolom kelas yang ada di tabel t_matkul menjadi kls

mysql> alter table t_matkul change kelas kls varchar(4); //Mengubah nama
kolom kelas pada table t_matkul menjadi kls
Query OK, 0 rows affected (0.12 sec) //Nama kolom berhasil diubah
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc t_matkul; //Melihat hasil perubahan nama kolom
+-------------+-------------+------+-----+---------+-------+
| Field
| Type
| Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| id_matkul | varchar(8) | NO | PRI | NULL |
|
| nama_matkul | varchar(20) | YES |
| NULL |
|
| id_dosen | varchar(8) | YES | MUL | NULL |
|
| kls
| varchar(4) | YES |
| NULL |
|
+-------------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
5. Gantilah type nama_dosen varchar(50) yang ada di tabel t_dosen
menjadi varchar(30)
mysql> alter table t_dosen modify nama_dosen varchar(30); //Memodifikasi
definisi t_dosen dengan mengubah tipe data nama_dosen menjadi varchar(30)
Query OK, 5 rows affected (1.04 sec) //Modifikasi berhasil dilakukan
Records: 5 Duplicates: 0 Warnings: 0
mysql> desc t_dosen; //Melihat hasil modifikasi tipe data pada field nama_dosen
+------------+-------------+------+-----+---------+-------+
| Field
| Type
| Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| id_dosen | varchar(8) | NO | PRI | NULL |
|
| nama_dosen | varchar(30) | YES |
| NULL |
|
| alamat
| varchar(50) | YES |
| NULL |
|
+------------+-------------+------+-----+---------+-------+
3 rows in set (4.14 sec)
6. Lakukan update dan delete record pada record yang telah diisikan
Update Record (pada t_dosen)
mysql> update t_dosen set alamat='Yogyakarta' where id_dosen='5115502';
//Mengubah data alamat menjadi Yogyakarta dimana alamat tersebut 1 record
dengan id_dosen=5115501
Query OK, 1 row affected (0.70 sec) //Update data berhasil dilakukan
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select *from t_dosen; //Melihat perubahan pada table t_dosen
+----------+------------------------------+------------+
| id_dosen | nama_dosen
| alamat
|
+----------+------------------------------+------------+
| 51109610 | Ir.Joko Susetyo., MT
| Solo
|
| 5115502 | Dra.Hj.Winarni, MM
| Yogyakarta |
| 51509690 | Endang Widuri Asih, ST., MT. | Sleman
|

| 52412700 | Imam Sodikin, ST., MT.


| Magelang |
| 52512550 | Drs. Sidarto., MEng.
| Kepuh
|
+----------+------------------------------+------------+
5 rows in set (0.00 sec)
Update Record (pada t_matkul)
mysql> update t_matkul set kls='P13' where id_matkul='MK 001'; //Mengubah
data kelas menjadi P13 dimana kelas tersebut 1 record dengan id_matkul=MK
001
Query OK, 1 row affected (4.30 sec) //Update data berhasil dilakukan
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select *from t_matkul; //Melihat perubahan pada table t_matkul
+-----------+--------------------+----------+------+
| id_matkul | nama_matkul
| id_dosen | kls |
+-----------+--------------------+----------+------+
| MK 001 | Matematika Diskrit | 5115502 | P13 |
| MK 002 | Logika Informatika | 51509690 | S107 |
| MK 003 | Sistem Operasi
| 52512550 | B203 |
| MK 004 | Kewarganegaraan | 52412700 | B111 |
| MK 005 | Jaringan Komputer | 51109610 | B112 |
+-----------+--------------------+----------+------+
5 rows in set (0.00 sec)
Delete Record (pada t_dosen)
//Penghapusan record pada table induk tidak bisa dilakukan jika record pada
table induk masih berelasi dengan table anak, jadi jika memang tetap mau
menghapus, harus menghapus dulu record relasinya pada table anak, setelah
itu baru menghapus record pada table induk seperti dibawah ini :
mysql> delete from t_dosen where id_dosen='5115502'; //Menghapus record
yang id_dosennya=5115502
Query OK, 1 row affected (1.03 sec) //Delete record berhasil dilakukan
mysql> select *from t_dosen; //Melihat sisa record pada t_dosen setelah proses
delete dilakukan
+----------+------------------------------+----------+
| id_dosen | nama_dosen
| alamat |
+----------+------------------------------+----------+
| 51109610 | Ir.Joko Susetyo., MT
| Solo
|
| 51509690 | Endang Widuri Asih, ST., MT. | Sleman |
| 52412700 | Imam Sodikin, ST., MT.
| Magelang |
| 52512550 | Drs. Sidarto., MEng.
| Kepuh |
+----------+------------------------------+----------+
4 rows in set (0.00 sec)
Delete Record (pada t_matkul)
mysql> delete from t_matkul where id_matkul='MK 001'; //Menghapus record
yang id_matkulnya=MK 001
Query OK, 1 row affected (2.02 sec) //Delete record berhasil dilakukan

mysql> select *from t_matkul; //Melihat sisa record pada t_matkul setelah
proses delete dilakukan
+-----------+--------------------+----------+------+
| id_matkul | nama_matkul
| id_dosen | kls |
+-----------+--------------------+----------+------+
| MK 002 | Logika Informatika | 51509690 | S107 |
| MK 003 | Sistem Operasi
| 52512550 | B203 |
| MK 004 | Kewarganegaraan | 52412700 | B111 |
| MK 005 | Jaringan Komputer | 51109610 | B112 |
+-----------+--------------------+----------+------+
4 rows in set (0.00 sec)
7. Buatlah tabel baru dengan nama t_dosen2 dan isi tabel t_dosen2
dengan mengcopy seluruh isi dari tabel t_dosen
mysql> create table t_dosen2 as select*from t_dosen; //Membuat table
t_dosen2 dengan mengcopy seluruh isi dari tabel t_dosen
Query OK, 4 rows affected (28.96 sec) //Tabel berhasil dibuat
Records: 4 Duplicates: 0 Warnings: 0
mysql> show tables; //Melihat table yang telah dibuat pada database ririn_sn2
+---------------------+
| Tables_in_ririn_sn2 |
+---------------------+
| t_dosen
|
| t_dosen2
|
| t_matkul
|
+---------------------+
3 rows in set (0.00 sec)
mysql> select *from t_dosen2; //Melihat isi table t_dosen2 yang dicopy dari
table t_dosen
+----------+------------------------------+----------+
| id_dosen | nama_dosen
| alamat |
+----------+------------------------------+----------+
| 51109610 | Ir.Joko Susetyo., MT
| Solo
|
| 51509690 | Endang Widuri Asih, ST., MT. | Sleman |
| 52412700 | Imam Sodikin, ST., MT.
| Magelang |
| 52512550 | Drs. Sidarto., MEng.
| Kepuh |
+----------+------------------------------+----------+
4 rows in set (0.00 sec)
8. Tampilkan kolom nama_dosen dan alamat
mysql> select nama_dosen,alamat from t_dosen; //Menampilkan seluruh data
pada kolom-kolom tertentu (nama_dosen dan alamat)
+------------------------------+----------+
| nama_dosen
| alamat |
+------------------------------+----------+
| Ir.Joko Susetyo., MT
| Solo
|
| Endang Widuri Asih, ST., MT. | Sleman |
| Imam Sodikin, ST., MT.
| Magelang |

| Drs. Sidarto., MEng.


| Kepuh
+------------------------------+----------+
4 rows in set (0.00 sec)

9. Tampilkan kolom nama_dosen secara desc


mysql> select *from t_dosen ORDER BY nama_dosen DESC; //Menampilkan data
pada kolom nama_dosen secara desc
+----------+------------------------------+----------+
| id_dosen | nama_dosen
| alamat |
+----------+------------------------------+----------+
| 51109610 | Ir.Joko Susetyo., MT
| Solo
|
| 52412700 | Imam Sodikin, ST., MT.
| Magelang |
| 51509690 | Endang Widuri Asih, ST., MT. | Sleman |
| 52512550 | Drs. Sidarto., MEng.
| Kepuh |
+----------+------------------------------+----------+
4 rows in set (1.72 sec)
10. Hapus database yang anda buat sekarang
mysql> drop database ririn_sn2; //Menghapus database ririn_sn2
Query OK, 3 rows affected (1.41 sec) //Database berhasil dihapus
mysql> show databases; //Menampilkan database yang tersisa
+--------------------+
| Database
|
+--------------------+
| information_schema |
| mysql
|
| performance_schema |
| sakila
|
| test
|
| world
|
+--------------------+
6 rows in set (0.12 sec)

You might also like