Anda di halaman 1dari 8

Jurusan Teknik Fisika FT-UGM

Modul Praktek Sistem Basis Data

PRAKTEK SISTEM BASIS DATA


Modul 3 - Pembuatan dan Manipulasi Tabel
Kompetensi dasar:
Mahasiswa mampu menerapkan alat bantu yang disediakan MySQL Workbench
untuk membuat dan memanipulasi tabel
Indikator:
Setelah mengikuti praktikum ini, mahasiswa akan dapat:
Memanfaatkan fasilitas yang dimiliki MySQL Workbench (SQL Editor) untuk
1. membuat tabel (CREATE)
2. mengisi tabel (INSERT INTO)
3. menghapus (DELETE FROM)
4. mengganti (UPDATE)
5. mengekspor dan mengimpor data

Mengunggah Model Basis Data ke Server


Model basis data dibuat terletak di komputer pengguna, belum ada di server MySQL. Untuk
membuat basis data di server MySQL, dapat dilakukan dengan 2 cara:
1. Cara Forward Engineering, yaitu mengunggah model basis data yang telah dibuat ke
server MySQL.
2. Menggunakan perintah SQL secara manual.
Untuk melakukan Forward Engineering terhadap model basis data yang telah dibuat.
Jalankan MySQL Workbench.
Buka model yang telah dibuat dengan cara mengklik dari daftar Models.
Setelah masuk dalam jendela MySQL Model, pilih menu Database-Forward
Engineer...
Dalam kotak dialog Forward Engineer to Database pilih koneksi localhost pada
listbox Stored Connection dan isikan username root. Tekan tombol Next untuk
melanjutkan.
Tekan tombol Next lagi pada langkah Options.
Isikan password jika diminta.
Pada langkah Select Objects, pastikan checkbox Export MySQL Table Objects
tercentang. Tekan tombol Next.
Pada langkah Review SQL Script ditampilkan perintah SQL untuk membuat basis
data akad serta ketiga tabel yang ada dalam model yang telah dibuat. pelajari secara
sekilas skrip sql tersebut, yang secara umum terdiri atas perintah CREATE
SCHEMA (sama dengan CREATE DATABASE), USE, dan CREATE TABLE.
Tekan tombol Next untuk melanjutkan.
Isikan password jika diminta.
Pada langkah terakhir dari Forward Engineer, yaitu Commit Progress, apabila model
sudah berhasil diunggah ke server MySQL, maka semua task akan diberi centang dan
terdapat tulisan Forward Engineer Finished Successfully.
Tekan tombol Close untuk menutup langkah Forward Engineer.
Tutup tab MySQL Model untuk kembali ke halaman depan MySQL Workbench.

Balza Achmad

3-1

Jurusan Teknik Fisika FT-UGM

Balza Achmad

Modul Praktek Sistem Basis Data

3-2

Jurusan Teknik Fisika FT-UGM

Balza Achmad

Modul Praktek Sistem Basis Data

3-3

Jurusan Teknik Fisika FT-UGM

Modul Praktek Sistem Basis Data

Untuk memastikan bahwa basis data akad sudah berhasil dibuat di server MySQL,
aktifkan koneksi localhost pada halaman awal MySQL Workbench. Isikan password
jika diminta.
Terlihat pada panel Navigator sekarang sudah muncul skema/basis data akad dengan
3 buah tabel di dalamnya. Perhatikan bahwa secara default, konfigurasi server MySQL
mengubah nama basis data dan tabel diawali huruf kecil meskipun dalam model ER
yang dibuat nama tabel diawali huruf besar.

Membuat Basis Data di Server Secara Manual dengan Perintah SQL

Hapus dulu basis data akad tersebut, karena hendak dibuat lagi, dengan cara
mengetikkan perintah berikut di panel Query dan eksekusi dengan mengklik ikon .
DROP DATABASE akad;

Setelah sukses melaksanakan perintah di atas, basis data akad akan hilang dari daftar
basis data di panel Navigator.
Untuk membuat kembali basis data tersebut, ketikkan perintah berikut dan eksekusi.
CREATE DATABASE akad;

Balza Achmad

3-4

Jurusan Teknik Fisika FT-UGM

Modul Praktek Sistem Basis Data

Basis data akad akan kembali muncul di panel Navigator. Jika perintah di atas sukses
namun belum muncul di daftar basis data, klik ikon .
Aktifkan basis data akad menjadi default untuk perintah-perintah berikutnya dengan
perintah
USE akad;

Membuat Tabel dengan Perintah SQL

Buat tabel Mahasiswa dengan perintah SQL berikut ini.


CREATE TABLE Mahasiswa (
NIM CHAR(8) NOT NULL,
Nama VARCHAR(75) NOT NULL,
Alamat VARCHAR(150) NULL,
Tgl_lahir DATE NULL,
PRIMARY KEY (NIM)
);

Jika dibandingkan dengan skrip yang dihasilkan oleh proses Forward Engineer,
perintah di atas lebih ringkas karena pada skrip Forward Engineer lebih kaya dengan
pilihan konfigurasi server. Namun secara umum hasilnya akan sama.
Tanda petik pada nama tabel dan nama kolom bersifat opsional kecuali jika nama tabel
atau kolom mengandung spasi (tidak disarankan).
Jika tabel berhasil dibuat maka akan muncul dalam daftar tabel di basis data akad di
panel Navigator.

TUGAS
1. Mengapa penyebutan nama tabel dalam perintah di atas tidak mencantumkan nama
basis data sebagaimana pada skrip Forward Engineer seperti di bawah ini?
CREATE TABLE akad.Mahasiswa (

2. Apa maksud perintah IF NOT EXISTS dalam perintah CREATE SCHEMA dan
CREATE TABLE pada skrip Forward Engineer?
3. Buatlah perintah SQL untuk membuat tabel Matakuliah dengan struktur seperti
dalam model ER yang telah dibuat.

Membuat Tabel Relasi dengan Perintah SQL

Buat tabel Ambil dengan perintah SQL berikut ini.


CREATE TABLE IF NOT EXISTS ambil (
Mahasiswa_NIM CHAR(8) NOT NULL,
Matakuliah_Kode CHAR(7) NOT NULL,
Nilai CHAR(1) NULL,

Balza Achmad

3-5

Jurusan Teknik Fisika FT-UGM

Modul Praktek Sistem Basis Data

PRIMARY KEY (Mahasiswa_NIM, Matakuliah_Kode),


INDEX fk_Mahasiswa_has_Matakuliah_Matakuliah1_idx
(Matakuliah_Kode),
INDEX fk_Mahasiswa_has_Matakuliah_Mahasiswa_idx
(Mahasiswa_NIM),
CONSTRAINT fk_Mahasiswa_has_Matakuliah_Mahasiswa
FOREIGN KEY (Mahasiswa_NIM)
REFERENCES Mahasiswa (NIM),
CONSTRAINT fk_Mahasiswa_has_Matakuliah_Matakuliah1
FOREIGN KEY (Matakuliah_Kode)
REFERENCES Matakuliah (Kode)
);

Tabel Ambil hanya bisa dibuat setelah tabel Mahasiswa dan tabel Matakuliah dibuat.
Mengapa?

Mengisi Tabel

Untuk memasukkan data Mahasiswa, gunakan perintah SQL berikut ini.


INSERT INTO mahasiswa (NIM, Nama, Alamat, Tgl_lahir)
VALUES ('09022001', 'Adi Santoso',
'Mergangsan Lor MG II/1097', '1991-04-28');

Untuk melihat apakah data tersebut sudah masuk atau belum ke dalam tabel, gunakan
perintah berikut.
SELECT * FROM mahasiswa;

Apabila urutan data sesuai dengan urutan kolom pada tabel maka nama kolom dapat
juga tidak dituliskan seperti perintah berikut. Meskipun demikian, disarankan untuk
tetap menuliskan nama kolom untuk memastikan data masuk ke kolom dengan benar.
INSERT INTO mahasiswa VALUES ('09022002', 'Afif Wijayanto',
'Perum Timoho Asri I/C4', '1990-10-14');

Karena pada tabel Mahasiswa, kolom Alamat dan Tgl_lahir boleh kosong (NULL),
maka kita bisa mengisikan data yang tidak lengkap seperti berikut.
INSERT INTO mahasiswa (NIM, Nama)
VALUES ('09022003', 'Aldian Yudha');

Menghapus Data dari Tabel

Untuk menghapus data mahasiswa yang memiliki NIM tertentu, gunakan perintah
berikut.
DELETE FROM mahasiswa WHERE NIM = '09022001';

Untuk menghapus data mahasiswa nama tertentu, gunakan perintah berikut.


DELETE FROM mahasiswa WHERE Nama = 'Afif Wijayanto';

Balza Achmad

3-6

Jurusan Teknik Fisika FT-UGM

Modul Praktek Sistem Basis Data

Untuk menghapus semua data dalam tabel:


DELETE FROM mahasiswa;

Mengganti Data yang Ada dalam Tabel

Untuk mengganti nama pada data mahasiswa dengan NIM tertentu:


UPDATE mahasiswa SET Nama = 'Arif Wijayanto'
WHERE NIM = '09022002';

Untuk menambahkan data alamat dan tanggal lahir mahasiswa dengan nama tertentu:
UPDATE mahasiswa SET Alamat = 'Jl. Janti Gg. Gatotkaca 36',
Tgl_lahir = '1991-07-18' WHERE NIM = '09022003';

Untuk mengganti NIM mahasiswa tertentu:


UPDATE mahasiswa SET NIM = '10022003' WHERE NIM = '09022003';

TUGAS
4. Tuliskan perintah untuk mengisi tabel Matakuliah dan tabel Ambil dengan data dari
Modul 0 masing-masing sebanyak 3 baris pertama.

Mengisi dan Mengedit Data Menggunakan MySQL Workbench


Untuk mengisi dan memanipulasi data yang ada dalam tabel dapat juga dilakukan
menggunakan fasilitas pengisian data dari MySQL Workbench. Contoh berikut adalah untuk
mengisi data tabel Mahasiswa.

Lakukan query berikut ini


SELECT * FROM mahasiswa;

Muncul tabel hasil query tersebut pada panel Query.

Untuk menambahkan data (baris) baru, isikan data pada baris terakhir (yang memiliki
tanda *). Ketika data diisikan ke baris tersebut, maka tanda * akan pindah ke
bawahnya, sehingga dapat ditambahkan data/baris baru lagi.
Data yang ditambahkan masih belum diunggah ke server MySQL. Untuk
mengunggahnya ke server, tekan tombol Apply pada bagian bawah panel edit tabel
tersebut.
Muncul kotak dialog Review the SQL Script to be Applied on the Database. Tekan
tombol Apply untuk melanjutkan.

Balza Achmad

3-7

Jurusan Teknik Fisika FT-UGM

Modul Praktek Sistem Basis Data

Untuk mengedit data, ubahlah data langsung pada sel yang dikehendaki. Setelah itu,
untuk mengupdate data di server, tekan tombol Apply sebagaimana langkah untuk
menambah data

Mengekspor dan Mengimpor Data dari File


Data dalam tabel dapat disimpan (diekspor) ke dalam file. Sebaliknya data juga bisa
ditambahkan dari file (impor). Format file yang digunakan dalam operasi ekspor dan impor
data dalam MySQL berupa file comma separated value (CSV) yaitu file teks yang antar
kolom dipisahkan dengan tanda koma, HTML berupa tabel yang dapat ditampilkan di
browser, JSON berupa struktur data JavaScript, perintah INSERT SQL, XML, format Excel,
serta tab separated.

Berikut contoh untuk mengekspor data dari tabel Mahasiswa. Lakukan query berikut
ini
SELECT * FROM mahasiswa;

Setelah tampil tabel berisi data mahasiswa, klik ikon ekspor ( ) pada toolbar panel
edit tabel.
Pada waktu muncul kotak dialog Export Resultset, pilih lokasi folder, isikan nama
file hasil ekspor, serta pilih tipe file. Kemudian tekan tombol Save.
Untuk mengimpor data dari file, klik ikon impor ( ). Lalu dalam kotak dialog
Import Recordset From CSV File, pilih file yang akan diimpor, kemudian tekan
tombol Open. Untuk operasi impor data, MySQL Workbench hanya mendukung file
berformat CSV.

TUGAS
5. Isikan semua data dari ketiga tabel pada Modul 0 ke dalam server MySQL.

Balza Achmad

3-8

Anda mungkin juga menyukai