You are on page 1of 7

MEMBUAT RELASI ANTAR TABEL DI

MYSQL MENGGUNAKAN COMMAND


PROMPT (CMD)
Hari Sabtu di Minggu kemarin, saya mendapat pelajaran tentang ERD (Entity Relationship
Diagram) dan DFD (Data Flow Diagram), juga praktikum merelasikan beberapa tabel agar
dapat diperoleh Informasi data dari tabel yang saling terpisah.
Dan untuk tugasnya saya disuruh membuat minimal 4 tabel dan merelasika minimal 2 tabel.
Menurutku, ini tugas yang susah-susah gampang.

Untuk itu, agar pelajaran ini tidak lupa di kemudian hari, saya ingin menulisnya diblog ini.
Lanjut.
Untuk membuat 4 tabel yang saling berelasi, pertama yang harus dilakukan adalah
membayangkan Database apa yang ingin di buat, tabel apa di dalam database itu,
juga primary key(kunci primer) dan foreign key(kunci tamu).
Hasilnya, bayangan saya adalah seperti yang sudah saya gambarkan di bawah ini.

Database yang ingin saya buat simpel, yaitu relasi antara siswa, guru, kelas di sekolah. Di
dalam database ini ada 4 tabel yaitu tabel Siswa, Kelas, Jurusan, dan tabel Guru. Untuk
relasinya bisa lihat gambar di atas. (Klik untuk melihat gambar ukuran penuh).
Sekarang, konsep diatas kita coba buat menggunakan Command Prompt (CMD) milik
Windows (Start->All Programs->Accessories->Command Prompt). Masuk dulu ke direktori
MySql, caranya
“cd c:\xampp\mysql\bin“ (enter) dilanjutkan “mysql -u root“ seperti dibawah ini. Jangan lupa
aktifkan MySql di Control Panel XAMPP. Atau di server lokal kalian.
Microsoft Windows XP [Version 5.1.2600]

(C) Copyright 1985-2001 Microsoft Corp.


C:\Documents and Settings\SEKAWAN>cd c:\xampp\mysql\bin
C:\xampp\mysql\bin>mysql -u root

kalau penulisannya benar, akan muncul:

Welcome to the MySQL monitor. Commands end with ; or \g.


Your MySQL connection id is 1
Server version: 5.1.41 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the current input
statement.

Selanjutnaya membuat database baru. kodenya adalah


“create database nama_database;“ (tanpa tanda petik). Dan juga gunakan database yang
di buat tadi
“use nama_database;“ setiap perintah di MySql di beri tanda “titik koma” (;) di akhirnya.
create database sekolah;
use Sekolah;

Nah, ini bagian yang membutuhkan ketelitian ekstra, yaitu membuat tabel. pertama
membuat tabel Siswa,
“create table Siswa(“ selanjutnya isi dengan
“nama_field typedata(panjang karakter) , nama_field2 typedata(panjang karakter) , … ,
nama_field(n) typedata(panjang karakter));“ Seperti dibawah ini:
mysql> create table Siswa(
-> NIS varchar(3),
-> NamaSiswa varchar(35),
-> Kelas varchar(7),
-> Alamat varchar(50),
-> JKelamin varchar(10),
-> primary key(NIS));

Dilanjutkan dengan membuat tabel yang lani (Tabel Kelas, Jurusan, dan Tabel Guru):

Tabel Kelas

mysql> create table Kelas(


-> KdKelas varchar(7),
-> NamaKelas varchar(15),
-> JmlSiswa varchar(3),
-> Walikelas varchar(3),
-> KdJurusan varchar(7),
-> primary key(KdKelas));

Tabel Jurusan

mysql> Create table Jurusan(


-> KdJurusan varchar(7),
-> NamaJurusan varchar(30),
-> KepalaJurusan varchar(3),
-> primary key(KdJurusan));

Tabel Guru

mysql> create table Guru(


-> NIP varchar(3),
-> NamaGuru varchar(35),
-> Alamat varchar(50),
-> JKelamin varchar(10),
-> primary key(NIP));

Kalau tabel berhasil di buat selalu ada keterangan Query OK, 0 rows affected (0.05
sec)

Bagian selanjutnya ini juga membutuhkan ketelitian ekstra, yaitu mengisi tabel, kodenya
“insert into nama_tabel values (‘field’ , ‘field2′ , … , ‘field’) , (‘field’ , ‘field2′ , … , ‘field’) , …
, (‘field’ , ‘field2′ , … , ‘field’);“. berikut implementasinya:
mysql> insert into Siswa values
-> ('001','Ahmad Rubaith Alawiy','XRA','Jampirejo','Laki-laki'),
-> ('002','Ahmad Faishal','XRB','Jampiroso','Laki-laki'),
-> ('003','Fitrotul Muyasaroh','XEA','Butuh','Perempuan'),
-> ('004','Ridatul Fauziah','XEB','Kertosari','Perempuan'),
-> ('005','Muhammad Ikhwan Aly S','XMA','Sayangan','Laki-laki'),
-> ('006','Fardan Ulinuha','XMB','Kauman','Laki-laki'),
-> ('007','Muhammad Naufal Hudallah','XIIRB','Jampirejo','Laki-laki'),
-> ('008','Alifatul Kumala','XIEA','Kowangan','Perempuan'),
-> ('009','Nadia Rasyidah','XIMB','Kerokan','Perempuan'),
-> ('010','Muhammad Adieb Muchtar','XIIEA','Sriwungu','Laki-laki');

Diteruskan dengan mengisi file tabel lainnya :

Tabel Kelas

mysql> insert into Kelas values


-> ('XRA','X RPL A','35','A01','RPL'),
-> ('XRB','X RPL B','36','B01','RPL'),
-> ('XEA','X ELIND A','34','C01','ELIND'),
-> ('XEB','X ELIND B','35','D01','ELIND'),
-> ('XMA','X MEKA A','36','E01','MEKA'),
-> ('XMB','X MEKA B','34','F01','MEKA'),
-> ('XIIRB','XII RPL B','36','G01','RPL'),
-> ('XIEA','XI ELIND A','37','H01','ELIND'),
-> ('XIMB','XI MEKA B','35','I01','MEKA'),
-> ('XIMA','XI MEKA A','36','J01','ELIND');

Tabel Jurusan

mysql> insert into Jurusan values


-> ('RPL','Rekayasa Perangkat Lunak','K01'),
-> ('MEKA','Mekatronika','L01'),
-> ('ELIND','Elektronika Industri','M01');

Tabel Guru

mysql> insert into Guru values


-> ('A01','Munayiroh','Butuh','Perempuan'),
-> ('B01','Ratna Kurniawati','Kranggan','Perempuan'),
-> ('C01','Sugito','Secang','Laki-laki'),
-> ('D01','Prasetyo','Tembarak','Laki-laki'),
-> ('E01','Ririn Luluk','Selopampang','Perempuan'),
-> ('F01','Erma Nasriati','Maron','Perempuan'),
-> ('G01','Edri Pratomo','Kowangan','Laki-laki'),
-> ('H01','Siti Rofiqoh','kandangan','Perempuan'),
-> ('I01','Sri Nurning','Manding','Perempuan'),
-> ('J01','Endang Palupi','Pikatan','Perempuan'),
-> ('K01','Sidik Waluyo','Maron','Laki-laki'),
-> ('L01','Budi Subagyo','Pikatan','Laki-laki'),
-> ('M01','Budi Tenggrono','Manding','Laki-laki');

Setelah tabel di isi file nya, kalian bisa melihat hasilnya dengan cara
“select*from nama_tabel;“.
Misal: mysql> select*from siswa; atau mysql> select*from kelas; dan lainnya.
Stelah semua tabel terisi file-nya, sekarang waktunya merelasikan tabelnya, kodenya
adalah:

select nama_tabel.field_tabel,…,nama_tabel.field_tabel from nama_tabel,…,nama_tabel where


nama_tabel.field_tabel = nama_tabel.field_tabel,…,nama_tabel.field_tabel
= nama_tabel.field_tabel;
KETERANGAN:

 di bagian “select” diisi misal Siswa.NIS , Siswa.NamaSiswa , Kelas.NamaKelas dll. (Bagian ini
sebagai seleksi field mana yang akan di tampilkan).
 Di bagian “from” diisi misal Siswa , Kelas , Jurusan , Guru. (Bagian ini sebagai dari tabel mana
saja field diambil).
 Di bagian “where” diisi misal Kelas.KdKelas = Siswa.Kelas atau Kelas.KdJurusan =
Jurusan.KdJurusan. (Bagian ini sebagai kondisi, bisa juga diartikan penghubung.Misal:
Kelas.KdKelas = Siswa.Kelas berarti field KdKelas di tabel Kelas sama dengan field Kelas di
tabel Siswa. Di bagin inilah yang paling penting sebagai perelasi antar tabel.)
Menurut kode di atas jika kita menginginkan menampilkan sebuah tabel yang
berisi field (NIS, Nama Siswa, Kelas, Jurusan, Walikelas), dari tabel-tabel yang dibuat
seperti diatas adalah sebagai berikut:

mysql> select Siswa.NIS , Siswa.NamaSiswa , Kelas.NamaKelas ,


Jurusan.NamaJurusan , Guru.NamaGuru
-> from Siswa , Kelas , Jurusan , Guru
-> where Kelas.KdKelas = Siswa.Kelas and Jurusan.KdJurusan =
Kelas.KdJurusan and Guru.NIP = Kelas.Walikelas;
X

CATATAN:

1. Setiap mengisikan perintah di MySql, harus diakhiri dengan tanda “titik koma” (;).
2. Tanda ( ,.., ) <–seperti ini bermaksud sebagai peringkas penulisan.
3. Setiap perintah sebelum diakhiri tanda “titik koma” (;), bisa diganti baris dengan cara di
(enter). Dengan di-enter, perintah bisa diteruskan disamping tanda anak panah ke
kanan (->).

Untuk hasilnya, kalian bisa melihatnya sendiri jika sudah di praktekan.

Jika kalian tidak mudheng dengan apa yang saya jelaskan di atas, kalian bisa lihat
videonya saja. dibawah ini.

You might also like