LANGKAH-LANGKAH PRAKTIKUM d46b1 modul praktikum sistem basis data

5.5 Menambah dan Menghapus Primary Key dan Foreign Key

Menambah kunci utama Primary Key pada sebuah tabel dapat dilakukan dengan perintah SQL sebagai berikut; ALTER TABLE table_name ADD PRIMARY KEY column_name; Sedangkan perintah SQL untuk menambah kunci tamu Foreign Key adalah sebagai berikut; ALTER TABLE table_name ADD COINSTRAINT constrain_foreign_name FOREIGN KEY constrain_foreign_name field_name_for_foreign_name REFERENCES table_name_reference field_name_for_foreign_name [ON DELETE] [RESTRICT ON UPDATE RESTRICT];

E. LANGKAH-LANGKAH PRAKTIKUM

Guna membantu pemahaman kita dalam menggunakan perintah-perintah Data Definition Statement DDS untuk membuat, merubah, menduplikasi dan menghapus objek Table, lakukan beberapa perintah query berikut ini; a. Masuklah ke MySQL sebagai root; C:\Program Files\MySQL\MySQL Server 5.0\bin\mysql -u root -h localhost -p  Enter password: rootpassword  b. Buatlah database ujimhsdb; mysqlCREATE DATABASE ujimhsdb;  mysqlUSE ujimhsdb;  c. Buatlah table-table mahasiswa, matakuliah, dosen, jenis ujian dan hasil ujian mahasiswa sebagai berikut; mysqlCREATE TABLE mahasiswa -nim VARCHAR7 NOT NULL PRIMARY KEY, -nama_mhs VARCHAR35 NOT NULL, -kelamin ENUM‘L’,’P’, -tmp_lahir VARCHAR35 NOT NULL, -tgl_lahir DATE NULL DEFAULT “0000-00-00”, -alamat VARCHAR50 NOT NULL;  mysqlCREATE TABLE dosen -kode_dosen VARCHAR5 NOT NULL PRIMARY KEY, -nama_dosen VARCHAR35 NOT NULL, -kelamin ENUM‘L’,’P’, -tmp_lahir VARCHAR35 NOT NULL, Modul Praktikum Sistem Basis Data .............................................................................. 56 -tgl_lahir DATE NULL DEFAULT “0000-00-00”, -alamat VARCHAR50 NOT NULL;  mysqlCREATE TABLE jenisujian -kode_ujian VARCHAR3 NOT NULL PRIMARY KEY, -nama_ujian VARCHAR35 NOT NULL;  mysqlCREATE TABLE matakuliah -kode_mtk VARCHAR6 NOT NULL PRIMARY KEY, -nama_mtk VARCHAR35 NOT NULL, -sks INT UNSIGNED, -kode_dosen VARCHAR5 NOT NULL;  mysqlCREATE TABLE hasilujian -nim VARCHAR7 NOT NULL, -kode_mtk VARCHAR6 NOT NULL, -kode_ujian VARCHAR3 NOT NULL, -nilai INT UNSIGNED;  mysqlSHOW TABLES;  d. Masukkan data berikut ke masing-masing table yang telah tercipta dengan perintah INSERT INTO. Data yang dimasukkan adalah sebagai berikut; Tabel 1: Data Dosen kode_dose n nama_dosen kelami n tmp_lahir tgl_lahir alamat D1001 Roy Markun L Bogor 1969-01-23 Jl. Mayjend. Sungkono 93 D1002 Ginanjar L Jakarta 1971-03-21 Jl. Ahmad Yani 100 D1003 Gina Sonia P Bandung 1962-09-12 Jl. Citarum 53 D1004 Ian Antono L Palembang 1970-10-11 Jl. Raden Saleh II42 D1005 Indri Jelita P Bengkulu 1973-07-19 Jl. Ahmad Yani 21 D1006 Desi Ratnasari P Padang 1970-11-09 Jl. Mayjend. Panjaitan 45 D2001 Moh. Umar P Malang 1973-12-25 Jl. Citandui 52 D2002 Aisyah Kamila L Semarang 1968-10-03 Jl. Panglima Sudirman 15 D2003 Ike Nurjannah P Surabaya 1971-10-10 Jl. Sidodadi 76 Tabel 2: Data Mahasiswa Nim nama_mhs klm tmp_lahir tgl_lahir alamat 0151001 Gogon L Medan 1982-09-29 Jl. Arjono 123 0151002 Tukul Arwana L Bogor 1982-06-22 Jl. Letjend. Sutoyo 87 0151003 Timbul L Semarang 1983-04-19 Jl. Panglima Sudirman 63 0151004 Nunung P Manado 1982-06-09 Jl. Merdeka Barat 90 0151005 Rohana P Cianjur 1981-01-13 Jl. Kesatrian 100 0151006 Jujuk P Denpasar 1983-11-07 Jl. Sarangan 75 0151007 Eko L Surabaya 1982-12-07 Jl. Gajayana IV621B 0151008 Basuki L Madiun 1982-06-17 Jl. Sunan Giri 54 Modul Praktikum Sistem Basis Data .............................................................................. 57 Nim nama_mhs klm tmp_lahir tgl_lahir alamat 0151009 Lilik Sundari P Samarang 1982-12-19 Jl. Ambarawa 93 Tabel 3: Data Jenis Ujian kode_ujian nama_ujian UJR Ujian Reguler UTS Ujian Tengah Semester UAS Ujian Akhir Semester UJP Ujian Perbaikan Tabel 4: Data Matakuliah kode_mtk nama_mtk sks kode_dosen KD_001 Sistem Basis Data 3 D1006 KD_002 Sistem Operasi 3 D2002 KD_003 Sistem Berkas 2 D1004 KD_004 Arsitektur Organisasi Komputer 3 D1002 KK_001 Algoritma Pemrograman 1 4 D1001 KK_002 Algoritma Pemrograman 2 4 D2001 KK_003 Algoritma Pemrograman 3 2 D1003 KK_004 Pemrograman Clint-Server 3 D1003 KK_005 Pemrograman Berbasis WEB 3 D2003 KK_006 Pemrograman Berbasis WAP 3 D1005 KK_007 Pemrograman Delphi 2 D2001 KK_008 Pemrograman Visual Basic 2 D1005 Tabel 5: Data Hasil Ujian nim kode_mtk kode_ujian nilai 0151001 KK_003 UJR 74 0151001 KK_004 UTS 82 0151001 KK_005 UAS 65 0151001 KK_006 UJP 56 0151002 KK_007 UJR 67 0151002 KK_008 UTS 98 0151002 KD_001 UJR 95 0151002 KD_002 UTS 83 0151003 KD_003 UTS 65 0151003 KD_004 UAS 76 0151003 KK_001 UJP 85 0151003 KK_002 UJR 96 0151004 KK_003 UTS 97 0151004 KD_001 UAS 88 0151004 KD_002 UTS 69 0151004 KD_003 UAS 74 0151005 KD_004 UJP 44 0151005 KK_001 UJR 55 0151005 KK_002 UTS 86 0151006 KK_003 UAS 67 0151006 KK_007 UAS 78 Modul Praktikum Sistem Basis Data .............................................................................. 58 nim kode_mtk kode_ujian nilai 0151006 KK_008 UJP 45 0151007 KD_001 UJR 56 0151007 KD_002 UAS 64 0151008 KD_003 UJR 76 0151009 KK_007 UJR 68 0151009 KK_008 UTS 69 e. Lakukan duplikasi table dengan perintah sebagai berikut; mysqlCREATE TABLE copy_dosen SELECT FROM dosen; mysqlCREATE TABLE copy_mahasiswa SELECT FROM mahasiswa; mysqlCREATE TABLE copy_matakuliah SELECT FROM matakuliah; mysqlCREATE TABLE copy_dosen SELECT FROM dosen WHERE 0=1; f. Lakukan penggantian nama table dengan perintah sebagai berikut; mysqlALTER TABLE copy_dosen RENAME dosen_copy; mysqlRENAME TABLE dosen_copy TO copy_dosen; mysqlRENAME TABLE copy_mahasiswa TO mahasiswa_copy, -matakuliah_dosen TO matakuliah_copy; g. Lakukan penghapusan table dengan perintah sebagai berikut; mysqlDROP TABLE copy_dosen; mysqlDROP TABLE mahasiswa_copy, matakuliah_copy; h. Lakukan perubahan pada nama field dan tipe datanya dengan perintah sebagai berikut; mysqlCREATE TABLE dosen_copy SELECT FROM dosen; mysql ALTER TABLE dosen_copy CHANGE COLUMN nama_dosen nama_dsn - VARCHAR45; mysql ALTER TABLE dosen_copy MODIFY COLUMN nama_dsn CHAR45; mysql ALTER TABLE dosen_copy CHANGE COLUMN nama_dsn nama_dosen - VARCHAR45; i. Lakukan penambahan field, perubahan urutan field dan penghapusan field dengan perintah sebagai berikut; mysql ALTER TABLE dosen_copy ADD COLUMN kota VARCHAR45 AFTER - alamat, ADD COLUMN telpon VARCHAR13 AFTER kota; mysql ALTER TABLE dosen_copy MODIFY nama_dosen VARCHAR45 FIRST; mysql ALTER TABLE dosen_copy MODIFY kelamin ENUM‘L’, ’P’ AFTER tgl_lahir; Modul Praktikum Sistem Basis Data .............................................................................. 59 mysql ALTER TABLE dosen_copy MODIFY kode_dosen VARCHAR5 FIRST; mysql ALTER TABLE dosen_copy DROP COLUMN kota, DROP COLUMN telpon; j. Lakukan penambahan Primary Key dan Foreign Key sebuah Table dengan perintah sebagai berikut; mysqlCREATE TABLE matakuiah_copy SELECT FROM matakuliah; mysqlALTER TABLE matakuliah_copy ADD PRIMARY KEYkode_mtk; mysqlALTER TABLE matakuliah_copy ADD CONSTRAINT FK_kode_dosen -FOREIGN KEY FK_kode_dosen kode_dosen REFERENCES dosen kode_dosen ON DELETE RESTRICT ON UPDATE RESTRICT; Modul Praktikum Sistem Basis Data .............................................................................. 60 PRAKTIKUM VI PENGAKSESAN DATA TABEL

A. LATAR BELAKANG