Rabu, 11 Mei 2016

Tutorial Mysql (Database)

Tutorial Mysql
(membuat database, membuat,  mengedit, menambah (update) table, lengkap)
perhitungan data (sum, average, dll)
step by step



TUTORIAL MEMBUAT TABEL DAN MENGEDIT TABLE MENGGUNAKAN MYSQL



A.    Menyiapkan Database dan Membuat Tabel
Langkah Pertama pastikan sudah teristal aplikasi XAMPP pada komputer dan service mysql sudah di run.
Jika sudah, buka aplikasi cmd dengan cara ketik cmd pada menu start kemudian tekan enter.
Berikut adalah tampilannya:

Karena kita berada di folder user pada drive C, maka kita perlu untuk pindah folder terlebih dahulu agar berada di folder awal di drive C. Ketikkan perintah “cd\” pada cmd kemudian tekan enter.
Kemudian melalui cmd kita masuk ke folder c:\xampp\mysql\bin dengan cara berikut ini: Ketikkan pada cmd: cd xampp\mysql\bin
Setelah kita berada di folder bin barulah kita bisa masuk ke mysql dengan akses root, berikut ini adalah caranya: mysql –u root
Jika sudah berhasil login maka tampilannya akan menjadi:

Barulah kita bisa memulai suatu database.
Pada dasarnya perintah perintah pada mysql ada dua jenis yaitu:
Pertama adalah DDL= Definition Data Language
Digunakan untuk kepentingan penciptaan database, tabel, hingga penghapusan database atau tabel
Contoh:
• CREATE (untuk membentuk basis data, table atau index)
• DROP (untuk mengubah struktur table)
• ALTER (untuk menghapus basis data, table atau index)
Yang kedua adalah DML = Data Manipulation Language
Digunakan untuk memanipulasi data
Contoh:
• SELECT – mengambil data
• DELETE – menghapus data
• INSERT – menyisipkan data
• UPDATE – mengubah data
Langkah awal yaitu kita perlu membuat database, perintahnya adalah:
mysql> create database perpustakaan;
cek apakah database sudah tercipta dengan perintah : show databases;
setiap perintah selalu diakhiri dengan tanda”;”, ingat ya
jika sudah membuat database selanjutnya kita perlu memilih database tersebut dengan perintah: mysql> use perpustakaan;
kemudian kia akan membuat sebuah table pada database tersebut, yang mana tabel ini terdiri dari field kode buku, judul buku, kode penerbit, dan kode pengarang. Perintahnya adalah: mysql> create table buku (kode_buku char(6) not null, judul_buku varchar(15), kode_pnb char(6), kode_pgr char(6));
jika muncul “Query OK, 0 rows affected (0.34 sec)” berarti kita sudah berhasil membuat tabel nya.
Cek daftar table yang sudah dibuat dengan perintah: mysql> show table;
Maka akan terlihat semua table yang sudah kita buat.
Contoh lain, buat lagi sebuah table dengan nama anggota, perintahnya:
mysql> create table anggota (no_anggota char(6) not null, nama varchar(30), tempat_lahir varchar(10), tanggal_lahir date, tanggal_daftar date, alamat varchar(50), tlp varchar(15));
cek lagi table kita dengan perintah : mysql> show tables;


Kesimpulan pembuatan table:
Perintah pembuatan table didahului dengan printah “create table” kemudian nama table apa yang akan digunakan kemudian ( nama field (spasi) tipe data(jumlah batasan input data), field selanjutnya)
Ket:
·         Not null : field tidak boleh kosong
·         Primary Key : field yang tidak boleh isinya sama dengan field lainnya.
Tipe data:
·         CHAR
Digunakan untuk menyimpan data karakter/string dengan ukuran tetap. Tipe data ini mempunyai jangkauan antara 0 sampai dengan 255 karakter.
·         VARCHAR
Digunakan untuk menyimpan data karakter/string dengan ukuran dinamis. Tipe data ini mempunyai jangkauan antara 0 sampai dengan 255 untuk MySQL versi 4.1. Dan mempunyai jangkauan antara 0 s/d 65.535 untuk MySQL versi 5.0.3

B.     Editing Tabel
Misalnya kita ingin menambah sebuah field baru, perintahnya adalah: mysql> alter table buku add ket varchar(50);
Jika muncul : “ Query OK, 0 rows affected (0.47 sec)  Records: 0  Duplicates: 0  Warnings: 0 “ berarti field sudah berhasil ditambahkan.
Menambahkan Primary Key pada suatu field yang berfungsi supaya data di field tersebut tidak sama dengan field lain. Contoh penggunaan:
mysql> alter table buku add primary key (kode_buku);
Cek struktur table yang telah kita buat dengan perintah: desc nama table
Contoh : mysql> desc buku;
dan hasilnya:


Kita coba untuk menambahkan atribut Primary Key pada field nomer anggota pada tabel angggota jadi perintahnya adalah: mysql> alter table anggota add primary key (no_anggota);
Cek kembali struktur tablenya degan perintah: mysql> desc anggota;

Kemudian misalnya kita ingin menghapis keynya lakukan dengan perintah
mysql> alter table anggota drop primary key;
untuk memastikan kita cek kembali : mysql> desc anggota;


Terlihat bahwa pada field no_anggota keynya sudah kosong kan.
Kemudian bagaimana cara menghapus sebuah kolom pada table, caranya adalah dengan menggunakan perintah alter table+drop, contohnya kita akan menghapus kolom “ket” yang barusaja kita tambahkan pada table buku, perintahnya adalah: mysql> alter table buku drop column ket;
Jika muncul “Query OK, 0 rows affected (0.54 sec) Records: 0  Duplicates: 0  Warnings: 0”
Berarti sudah berhasil menghapus kolom ketnya.
Untuk memastikan cek kembali strukturnya dengan perintah :desc nama_table;
Selanjutnya kita akan belajar bagaimana cara untuk mengubah/modif suatu field:
Pertama kita tambahkan field baru pada table anggota, misalnya jenis kelamin, perintahnya adalah:
mysql> alter table anggota add jenis_kelamin char(1) after tanggal_lahir;
kemudian kita ubah nama field jenis kelamin menjadi “sex” untuk mengubahnya kita menggunakan perintah “change”, contohnya adalah:
mysql> alter table anggota change jenis_kelamin sex char(1);
Query OK, 0 rows affected (0.12 sec) ß artinya sudah berhasil  ya

Cek kembali tablenya dengan perintah: mysql> desc anggota;


Kita modif kembali kolom sex supaya user hanya dapat memilih antara “L” untuk laki-laki dan “P” untuk perempuan. Contoh perintahnya adalah:
mysql> alter table anggota modify sex enum ('L','P') not null;
pada syntak diatas kita lihat bahwa kolom sex menggunakan tipe data enum. Tipe data ENUM merupakan tipe data yang khusus untuk kolom dimana nilai datanya sudah kita tentukan sebelumnya. Pilihan ini dapat berisi 1 sampai dengan 65,535 pilihan string. Dimana kolom yang didefinisikan sebagai ENUM hanya dapat memilih satu diantara pilihan string yang tersedia. Jadi nanti user hanya dapat memilih antara L/P sesuai dengan jenis kelaminnya, begitu.
Cek kembali strukturnya : mysql> desc anggota;


C.     Penggunaan Auto Increment
Auto increment field pada MySQL adalah suatu tipe field integer yang secara otomatis akan bertambah nilainya jika terjadi penambahan row pada table dimana field tersebut berada. Otomatis disini artinya pada saat kita memasukkan data baik melalui stement INSERT maupun melalui mekanisme data access lainnya, field tersebut tidak perlu dimasukkan nilainya atau cukup diberi nilai NULL, maka MySQL akan menentukan sendiri nilai apa yang akan diberikan sebagai akibat penambahan baris data tersebut.
Contoh kita akan membuat kolom no_anggota supaya otomatis di inputkan perintahnya adalah:  mysql> alter table anggota modify no_anggota int(5) not null auto_increment;
Untuk memastikan cek kembali struktur tablenya : mysql> desc anggota;


Jika kita ingin merubah nama table bisa dilakukan dengan perintah:
mysql> rename table buku to tb_buku;
mysql> alter table anggota rename to tb_anggota;
D.    Pengisian Tabel
setelah kita membuat tablenya selanjutnya kita akan mengisi table tersebut, dengan sintaknya adalah: insert into nama_table values (‘data pada field 1’,’data pada filed ke 2’,’dst); contoh perintahnya adalah:
mysql> insert into tb_buku values ('1000BK','Database','PNB1','PGRI');
untuk menampilkan semua isi dari table yang sudah kita imputkan caranya adalah:
mysql> select * from tb_buku;
maka akan tampil:



Setelah selasai pekerjaannya, kita bisa keluar dengan perintah:
Pengisian Data secara berurutan;
Mislnya kita ingin menginputkan banyak data dalam suatu table, untuk mempersingkat syntak caranya adalah sebagai berikut:
Kita buat dulu table yang baru:
create table buku (kode_pnb char(20) not null primary key, nama_pnb char(
20), telp_pnb char(12), alamat_pnb char(20));
Kemudian kita lihat struktur yang sudah kita buat:
mysql> desc buku;
Untuk isi tablenya kita akan isi dengan:
Kode PNB
Nama Penerbit
Nomer Telepon
Alamat
PNB1
Air Langga
08173456219
Bandung
PNB2
Lokomodis
08274829101
Yogyakarta
PNB3
Gramedia
021673528
Jakarta
PNB4
CV Andi
0274588282
Yogyakarta


Syntaknya adalah:
mysql> insert into buku values('PNB1','Air Langga','08173456219','Bandung'), (enter)
    -> ('PNB2','Lokomedis','0274-829101','Yogyakarta'), (enter)
    -> ('PNB3','Gramedia','021-673528','Jakarta'), (enter)
    -> ('PNB4','CV Andi','0274-588282','Yogyakarta'); (enter)
Jika muncul seperti ini:
Query OK, 4 rows affected (0.52 sec)
Records: 4  Duplicates: 0  Warnings: 0
Berarti pengisian berhasil.
Cek isi tablenya dengan cara: mysql> select * from buku;


Kemudian kita akan tambahkan sebuah kolom Harga, dengan perintah:
mysql> alter table tb_buku add harga int(7);
untuk Mengisi harga buku, kita gunakan syntak “Update”
perintahnya adalah:
mysql> update tb_buku set harga=65000 where kode_buku='1000BK';
mysql> update tb_buku set harga=78800 where kode_buku='1001BK';
mysql> update tb_buku set harga=80800 where kode_buku='1003BK';

mysql> update tb_buku set harga=40550 where kode_buku='1004BK';
mysql> update tb_buku set harga=55000 where kode_buku='1005BK';
mysql> update tb_buku set harga=54500 where kode_buku='1002BK';
jika sudah, kita cek apakah sudah terisi harga atau belum..
mysql> select * from tb_buku;


Jika kita ingin mencari jumlaoh, rata-rata, dari kolom harga yang sudah kita biat dapat dilakukan dengan perintah-perintah berikut ini:
Mencari Jumlah:
mysql> select sum(harga) as total_harga from tb_buku;
+-------------+
| total_harga |
+-------------+
|      374650 |
+-------------+
1 row in set (0.04 sec)
Mencari Jumlah dengan kondisi tertentu, perintahnya adalah:
mysql> select sum(harga) as total_harga from tb_buku where kode_pnb='PNB2';

+-------------+
| total_harga |
+-------------+
|      175850 |
+-------------+
1 row in set (0.00 sec)
Mencari Rata-Rata:
mysql> select avg(harga) as harga_ratarata from tb_buku;
+----------------+
| harga_ratarata |
+----------------+
|     62441.6667 |
+----------------+
1 row in set (0.00 sec)
Mencari rata-rata dengan kondisi tertentu, menggunakan seleksi:
mysql> select avg(harga) as rata_rata from tb_buku where kode_pnb='PNB2';
+------------+
| rata_rata  |
+------------+
| 58616.6667 |
+------------+
1 row in set (0.00 sec)

mysql>exit;

SELESAI

Selamat Belajar, Semoga Bermanfaat :)