Anda di halaman 1dari 15

STEP BY STEP MYSQL

DATABASE

Oleh : Roberto Kaban


Roberto.kaban@yahoo.com

Lisensi Dokumen:
Copyright © 2010 by Roberto Kaban
Seluruh isi dalam dokumen ini dapat digunakan, dimodifikasi dan disebarkan secara bebas
untuk tujuan pembelajaran, dengan syarat tidak menghapus atau merubah atribut penulis dan
pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan
penulisan ulang penggubahan kecuali mendapatkan ijin secara tertulis terlebih dahulu dari Roberto
Kaban.
PENDAHULUAN

Pada artikel ini tidak dibahas secara teoritis mengenai MySql dan Basis Data, karena
dengan membaca artikel ini anda sudah dianggap mengerti konsep dasar database dan
instalasi MySql. Jadi saya mohon maaf jika anda tidak akan menemukan kata MySql adalah,
Kelebihan MySql, Apa itu database, Entity, Field, Record, Tipe data, dll. Hal yang paling
difokuskan dalam artikel ini adalah garis besar bagaimana cara membuat dan
memanajemen database Mysql.
Metode yang digunakan pada artikel ini bersifat step by step dengan contoh langung
dipraktekkan. Jadi sebaiknya jangan beralih kelangkah ke-5 sebelum menyelesaikan langkah
ke-4 dan seterusnya.
Akhir kata saya hanya berharap kritikan dan saran dari teman teman semua karena
artikel ini seperti Matahari dan Pluto jaraknya dari kempurnaan. Terimakasih dan Selamat
membaca..

Salam berbagi..

Roberto Kaban
Roberto.kaban@yahoo.com
DAFTAR LANGKAH-LANGKAH

MEMULAI MYSQL........................................................................................................ Y
MENAMPILKAN DATABASE......................................................................................Y
MEMBUAT DATABASE...............................................................................................Y
MENGHAPUS DATABASE...........................................................................................Y
MEMILIH DATABASE..................................................................................................Y
MENAMPILKAN TABEL..............................................................................................Y
MEMBUAT TABEL........................................................................................................ Y
MEMBUAT TABEL PADA DATABASE LAIN...........................................................Y
MENAMPILKAN STRUKTUR TABEL.......................................................................Y
MENCOPY TABEL......................................................................................................... Y
MENCOPY TABEL KE DATABASE LAIN.................................................................Y
MENCOPY TABEL DARI DATABASE LAIN.............................................................Y
MERUBAH NAMA TABEL...........................................................................................Y
MERUBAH FIELD(KOLOM)........................................................................................Y
MENGHAPUS TABEL...................................................................................................Y
MENAMBAH FIELD (KOLOM)....................................................................................Y
MERUBAH NAMA FIELD(KOLOM)...........................................................................Y
MENGHAPUS FIELD (KOLOM)..................................................................................Y
MERUBAH TIPE DATA................................................................................................Y
MERUBAH UKURAN FIELD........................................................................................Y
MERUBAH NULL MENJADI NOT NULL DAN SEBALIKNYA...............................Y
MEMBUAT PRIMARY KEY.........................................................................................Y
MENGHAPUS PRIMARY KEY.....................................................................................Y
MEMBUAT INDEX........................................................................................................ Y
MENGHAPUS INDEX....................................................................................................Y
MEMBUAT UNIQUE.....................................................................................................Y
MERUBAH DEFAULT...................................................................................................Y
MENGHAPUS DEFAULT..............................................................................................Y
MENAMPILKAN ISI TABEL........................................................................................Y
MENGISI ATAU MENAMBAH DATA KE TABEL....................................................Y
TO BE CONTINUED...................................................................................................... EOF
MEMULAI MYSQL

Pada Artikel ini mysql yang digunakan adalah mysql versi 5.0 yang instalasinya dipaketkan
dalam xampp. Sebelum masuk ke Mysql pastikan service Mysql sudah dijalankan terlebih dahulu,
cara masuk ke Mysql melalui command prompt pada Xampp yang direktori instalasinya drive C :
C:\>cd xampp\Mysql\bin
C:\xampp\Mysql\bin>Mysql -u root -p
Enter password: ******
Welcome to the Mysql monitor. Commands end with ; or \g.
Your Mysql connection id is 1
Server version: 5.0.45-community-nt Mysql Community Edition (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
Mysql>

MENAMPILKAN DATABASE
Mysql> show database;

MEMBUAT DATABASE
Mysql> create database penjualan; /*membuat database dengan nama penjualan */
Mysql> create database perpustakaan; /*membuat database dengan nama perpustakaan */
Mysql> create database gudang; /*membuat database dengan nama gudang */

MENGHAPUS DATABASE
Mysql> drop database perpustakaan; /*menghapus database perpustakaan */
MEMILIH DATABASE
Mysql> use penjualan; /*memilih atau menggunakan database penjualan */

MENAMPILKAN TABEL
Mysql> show tables; /*menampilkan table dalam database penjualan */

MEMBUAT TABEL
Mysql> create table barang(kode varchar(5) not null primary key, nama varchar(20), harga decimal(9,0));
/*membuat table barang pada database penjualan */

Mysql> create table pelanggan(kode varchar(5) not null primary key, nama varchar(20), alamat varchar(30), kota
varchar(15), telepon varchar(13)); /*membuat table pelanggan dalam database penjualan */

Mysql> create table transaksi(no_fak varchar(5) not null, tanggal date, ko_plgn varchar(5), primary
key(no_fak));/*membuat table pelanggan dalam database penjualan */

Mysql> create table detail_trans(no_fak varchar(5), ko_brg varchar(5), jlh_brg int(3)); /*membuat table
detail_trans dalam database penjualan */

Mysql> create table ex_detail_trans(no_id int unsigned auto_increment not null, no_fak varchar(5), ko_brg
varchar(5), jlh_brg int(3), primary key(no_id)); /*membuat table ex_detail_trans pada database penjualan

MEMBUAT TABEL PADA DATABASE LAIN


Mysql> create table gudang.ex_barang(no_fak varchar(5), ko_brg varchar(5), jlh_brg int(3)); /* membuat table
ex_barang pada database gudang */

MENAMPILKAN STRUKTUR TABEL


Mysql> desc barang; /*menampilkan struktur table barang */
+-------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| kode | varchar(5) | NO | PRI | | |
| nama | varchar(20) | YES | | NULL | |
| harga | decimal(9,0) | YES | | NULL | |
+-------+--------------+------+-----+---------+-------+
3 rows in set (0.03 sec)

mysql> desc pelanggan; /*menampilkan struktur table pelanggan */


+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | PRI | | |
| nama | varchar(20) | YES | | NULL | |
| alamat | varchar(30) | YES | | NULL | |
| kota | varchar(15) | YES | | NULL | |
| telepon | varchar(13) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
5 rows in set (0.01 sec)

mysql> desc transaksi; /*menampilkan struktur table transaksi */


+---------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------+------+-----+---------+-------+
| no_fak | varchar(5) | NO | PRI | | |
| tanggal | date | YES | | NULL | |
| ko_plgn | varchar(5) | YES | | NULL | |
+---------+------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql> desc detail_trans; /*menampilkan struktur table detail_transaksi */


+---------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------+------+-----+---------+-------+
| no_fak | varchar(5) | YES | | NULL | |
| ko_brg | varchar(5) | YES | | NULL | |
| jlh_brg | int(3) | YES | | NULL | |
+---------+------------+------+-----+---------+-------+
3 rows in set (0.02 sec)

MENGCOPY TABEL
mysql> create table cp_barang select * from barang; /*mengcopy table barang menjadi table cp_barang */

MENGCOPY TABEL KE DATABASE LAIN


mysql> create table gudang.cp_barang select * from barang; /*mengcopy table barang menjadi cp_barang ke
database gudang */

MENGCOPY TABEL DARI DATABASE LAIN


mysql> create table dp_barang select * from gudang.cp_barang; /*mengcopy table cp_barang dari database
gudang ke table dp_barang di database penjualan atau database yang digunakan sekarang */

mysql> show tables; /* melihat semua table pada database


+---------------------+
| Tables_in_penjualan |
+---------------------+
| barang |
| cp_barang |
| detail_trans |
| dp_barang |
| ex_detail_trans |
| pelanggan |
| transaksi |
+---------------------+

MERUBAH NAMA TABEL


mysql> alter table barang rename tb_barang; /*mengganti nama table barang menjadi tb_barang */

mysql> alter table pelanggan rename tb_pelanggan; /*mengganti nama table pelanggan menjadi tb_pelanggan */

mysql> alter table transaksi rename tb_transaksi; /*mengganti nama table transaksi menjadi tb_transaksi */
mysql> alter table detail_trans rename tb_detail_trans; /* mengganti nama table detail_trans menjadi
tb_detail_trans */

mysql> show tables;


+---------------------+
| Tables_in_penjualan |
+---------------------+
| cp_barang |
| dp_barang |
| ex_detail_trans |
| tb_barang |
| tb_detail_trans |
| tb_pelanggan |
| tb_transaksi |
+---------------------+
7 rows in set (0.00 sec)

MENGHAPUS TABEL
mysql> drop table cp_barang; /*menghapus table cp_barang */

MENAMBAH FIELD (KOLOM)


Mysql> alter table dp_barang add jenis varchar(20); /*mengubah struktur table dp_barang dengan menambahkan
field jenis */

Mysql> alter table dp_barang add id varchar(5) not null after kode; /*mengubah struktur table dp_barang dengan
menambakan field id setelah field kode */

Mysql> alter table ex_detail_trans add id_no int unsigned auto_increment not null primary key first; /*mengubah
struktur table ex_detail dengan menambahkan id_no sebagai primary key pada awal field table */
Mysql> desc dp_barang; /*menampilkan struktur table barang */
+-------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | decimal(9,0) | YES | | NULL | |
| jenis | varchar(20) | YES | | NULL | |
+-------+--------------+------+-----+---------+-------+
5 rows in set (0.01 sec)

mysql> desc ex_detail_trans; /*menampilkan struktur table ex_detail trans */


+---------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------------+------+-----+---------+----------------+
| id_no | int(10) unsigned | NO | PRI | NULL | auto_increment |
| no_fak | varchar(5) | YES | | NULL | |
| ko_brg | varchar(5) | YES | | NULL | |
| jlh_brg | int(3) | YES | | NULL | |
+---------+------------------+------+-----+---------+----------------+
4 rows in set (0.02 sec)

MERUBAH NAMA FIELD (KOLOM)


mysql> alter table dp_barang change jenis kategori varchar(20); /* merubah field jenis menjadi kategori pada table
dp_barang */

mysql> desc dp_barang; /*manampilkan struktur table dp_barang */


+----------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | decimal(9,0) | YES | | NULL | |
| kategori | varchar(20) | YES | | NULL | |
+----------+--------------+------+-----+---------+-------+
5 rows in set (0.01 sec)

MENGHAPUS FIELD (KOLOM)


mysql> alter table dp_barang drop kategori; /*mengubah struktur table dp_barang dengan menghapus field
kategori */

mysql> desc dp_barang; /*manampilkan struktur table dp_barang*/


+-------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | decimal(9,0) | YES | | NULL | |
+-------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

MERUBAH TIPE DATA


mysql> alter table dp_barang modify harga int(8); /*merubah struktur table dp_barang dengan mengganti tipe
data harga menjadi integer sebanyak 8 karakter */

mysql> desc dp_barang; /*manampilkan struktur table dp_barang */


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | int(8) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

MERUBAH UKURAN FIELD (KOLOM)


mysql> alter table dp_barang modify harga int(10); /*mengubah struktur table dp_barang dengan mengganti
field harga menjadi integer sebanyak 10 karakter */

mysql> desc dp_barang; /*menampilkan struktur table dp_barang */


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | int(10) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
MERUBAH NULL MENJADI NOT NULL DAN SEBALIKNYA
Mysql> alter table dp_barang modify nama varchar(20) not null;

mysql> desc dp_barang;


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | NO | | | |
| harga | int(10) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

Mysql> alter table dp_barang modify nama varchar(20);

mysql> desc dp_barang;


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | int(10) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

MEMBUAT PRIMARY KEY


Mysql> alter table dp_barang add primary key (kode);

mysql> desc dp_barang;


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | PRI | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | int(10) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
MENGHAPUS PRIMARY KEY
Mysql> alter table dp_barang drop primary key;
mysql> desc dp_barang;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | int(10) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

MEMBUAT INDEX
Mysql> alter table ex_detail_trans add index kobrg_ndx(ko_brg);

atau
Mysql> create index kobrg_ndx on ex_detail_trans(ko_brg);

mysql> desc ex_detail_trans;


+---------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------------+------+-----+---------+----------------+
| id_no | int(10) unsigned | NO | PRI | NULL | auto_increment |
| no_fak | varchar(5) | YES | | NULL | |
| ko_brg | varchar(5) | YES | MUL | NULL | |
| jlh_brg | int(3) | YES | | NULL | |
+---------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

MENGHAPUS INDEX
Mysql> alter table ex_detail_trans drop index kobrg_ndx;

mysql> desc ex_detail_trans;


+---------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+------------------+------+-----+---------+----------------+
| id_no | int(10) unsigned | NO | PRI | NULL | auto_increment |
| no_fak | varchar(5) | YES | | NULL | |
| ko_brg | varchar(5) | YES | | NULL | |
| jlh_brg | int(3) | YES | | NULL | |
+---------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
MEMBUAT UNIQUE
Mysql> alter table dp_barang add unique id_uni(id);

mysql> desc dp_barang;


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | PRI | | |
| nama | varchar(20) | YES | | NULL | |
| harga | int(10) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.02 sec)

MENGHAPUS UNIQUE
mysql> alter table dp_barang drop index id_uni;

mysql> desc dp_barang;


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | int(10) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

MERUBAH DEFAULT
Mysql> alter table dp_barang alter nama set default 'Sandal';

Mysql> alter table dp_barang alter harga set default 99999;

mysql> desc dp_barang;


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | Sandal | |
| harga | int(10) | YES | | 99999 | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

MENGHAPUS DEFAULT
Mysql> alter table dp_barang alter nama drop default;

mysql> desc dp_barang;


+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| kode | varchar(5) | NO | | | |
| id | varchar(5) | NO | | | |
| nama | varchar(20) | YES | | NULL | |
| harga | int(10) | YES | | 99999 | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.02 sec)

MENAMPILKAN ISI TABEL


Mysql> select * from tb_barang;

MENGISI ATAU MENAMBAH DATA KE TABEL


Mysql> insert into tb_barang (kode,nama,harga) values ('B9001','Televisi', 1300000);

Atau
Mysql> insert into tb_barang values('B9002','Kamera',3500000);

Mysql> insert into tb_barang(kode,nama) values('B9003','Kaos');

mysql> select * from tb_barang;


+-------+----------+---------+
| kode | nama | harga |
+-------+----------+---------+
| B9001 | Televisi | 1300000 |
| B9002 | Kamera | 3500000 |
| B9003 | Kaos | NULL |
+-------+----------+---------+
3 rows in set (0.00 sec)
Untuk melanjutkan ke tahap selanjutnya, silakan isikan table anda seperti data pada table
dibawah :

mysql> select * from tb_barang;


+-------+-----------+---------+
| kode | nama | harga |
+-------+-----------+---------+
| B9001 | Televisi | 1300000 |
| B9002 | Kamera | 3500000 |
| B9003 | Kaos | NULL |
| B9004 | handycam | 2500000 |
| B9005 | handphone | 1500000 |
+-------+-----------+---------+
5 rows in set (0.00 sec)

mysql> select * from tb_pelanggan;


+-------+-----------------+----------------------+---------+--------------+
| kode | nama | alamat | kota | telepon |
+-------+-----------------+----------------------+---------+--------------+
| P0001 | Roberto Kaban | Jl. Percobaan No. 10 | Medan | 081260329842 |
| P0002 | Freeze ADK | Jl. Percobaan No. 10 | Medan | 8845656 |
| P0003 | Rico Kristianta | Jl. Merdeka No. 55 | Medan | 7712456 |
| P0004 | Leonardo | Jl. Mawar No. 32 | Bandung | 7725656 |
+-------+-----------------+----------------------+---------+--------------+
4 rows in set (0.00 sec)

mysql> select * from tb_transaksi;


+--------+------------+---------+
| no_fak | tanggal | ko_plgn |
+--------+------------+---------+
| F0001 | 2010-01-10 | P0001 |
| F0002 | 2010-01-10 | P0001 |
| F0003 | 2010-01-10 | P0004 |
| F0004 | 2010-01-10 | P0002 |
| F0005 | 2010-01-10 | P0003 |
+--------+------------+---------+
5 rows in set (0.00 sec)

Mysql> select * from tb_detail_trans;


+--------+--------+---------+
| no_fak | ko_brg | jlh_brg |
+--------+--------+---------+
| F0001 | B9001 | 2|
| F0001 | B9002 | 2|
| F0002 | B9003 | 5|
| F0003 | B9004 | 3|
| F0004 | B9004 | 1|
| F0005 | B9003 | 2|
| F0005 | B9002 | 1|
| F0003 | B9005 | 6|
+--------+--------+---------+
8 rows in set (0.00 sec)

TO BE CONTINUED..

Anda mungkin juga menyukai