MySQL merupakan bahasa pemograman database di mana penulisan sintaknya tidak serumit bahasa pemograman lainnya seperti java, C++ dan sebagainya. Satu hal yang perlu diingat bahwa setiap penulisan script MySQL di Dos-Prompt harus selalu diakhiri dengan tanda titik koma (;). Di dalam source MySQL yang telah terinstal secara default telah terisi sebuah database yang bernama mysql dan tes. Untuk dapat menampilkan apa saja nama database yang telah ada maupun yang akan kita buat, gunakan sintak :

Mysql> show databases;

 


Membuat database
Untuk membuat sebuah database dengan nama ‘Perpustakaan’ kita tidak perlu harus keluar terlebih dahulu dari salah satu database walau kita sebelumnya telah masuk ke dalamnya, untuk membuatnya gunakan syntax berikut :

mysql> create database perpustakaan;

Jika ada kalimat query ok, 1 row affected (0,03 sec) berarti kita telah berhasil membuat sebuah database yang bernama formulir.

Menghapus Database
Dan untuk menghapusnya, gunakan sintak sebagai berikut :

mysql>drop database perpustakaan;

Mengaktifkan Database

mysql>use perpustakaan;

Membuat tabel
Setelah kita memasuki sebuah database, kita dapat mulai membuat tabel – tabel sesuai dengan keperluan kita. Dalam database dikenal primary key, yaitu field yang menjadi acuan data terhadap field-field lainnya dan primary key tidak boleh null. Misalkan nama tabelnya adalah ‘anggota’, maka sintaknya adalah :

mysql>create table nama_table (field1 typefield1 not null , field2 type field2, primary key (field1);

Contoh :
create table anggota (nomor integer auto_increment, nama varchar(25), alamat varchar(30), JK varchar(1), pekerjaan varchar(25), tgl_lahir date, primary key (nomor));


Mengisi tabel
Setelah tabel terbentuk, kita dapat memulai pekerjaan mengisi database. Syntax yang digunakan adalah :

mysql>insert into nama_table (field1,field2) values (valuefield1,valuefield2);

contoh :
insert into anggota (nama, alamat) values (‘Rangga’,’Klaten’);

insert into anggota values (‘’,’Anggit’,’Semarang’ , ’L’ ,’Mahasiswa’ , ’1990/10/24’);
Yang perlu diperhatikan, untuk type field char data yang dimasukkan harus diapit tanda petik ‘ ‘, sedangkan untuk tipe integer tidak.

Menampilkan isi table

mysql>select*from nama_table;

contoh :
select * from anggota;

Tanda (*) merupakan perintah untuk menampilkan seluruh kolom beserta isinya.
Jika kita ingin menampilkan hanya kolom nama saja, maka sintaknya adalah:

mysql>select field from nama_table;

contoh :
select nama from anggota;
select nama,alamat, pekerjaan from anggota;

Menampilkan isi tabel dengan beberapa keyword :
1. Distinct
Keyword ini berguna untuk menghilangkan record-record yang sama.
Sintaknya :
mysql>select distinct field from nama_table ;

contoh :
select distinct nama from anggota;

2. Between
Keyword ini berguna untuk membatasi suatu kolom yang berada pada suatu batas nilai tertentu. Misalkan, buka tabel user di database formulir, sintaknya :
mysql>select field1, field2 from nama_table where field2 between valuefield2 and valuefield2;

contoh :
select nama, alamat from anggota where tgl_lahir between 1980/12/12 and 1990/12/12;






3. Like
Keyword ini berguna untuk mencari data yang memiliki pola tertentu. Misalkan untuk mencari alamat anggota dengan kata unix, dapat digunakan query :
mysql>select field from nama_table where field like ‘%value%’;

contoh :
select alamat from anggota where alamat like ‘%a%’;

4. order by
Keyword ini berguna untuk menampilkan field sesuai abjad. Sintak :
mysql>select * from nama_table order by field;

contoh :
select * from anggota order by nama;

untuk urutan kebalikannya dapat digunakan;
mysql>select field1,field2 from data order by field1 desc;

Mengubah isi tabel
Untuk mengoreksi kesalahan data yang kita masukkan, atau untuk memperbaharui value field yang lama dapat kita gunakan syntax berikut;

mysql>update nama_table set fieldl=’valuefieldbaru’;

contoh :
update anggota set nama=’adnan’;

maka hasilnya adalah seluruh value field dari field yang ditentukan dari sintak di atas yang telah terisi maupun yang belum terisi akan berubah menjadi adnan, hal ini di sebabkan kita belum mengidentifikasi value field mana saja yang harus berubah.

update anggota set nomor=’001’;

Sebelumnya kita harus mengetahui kondisi field ketika pertama kali kita definisikan. Karena field nomor merupakan primary key dari table tersebut maka tidak boleh value field-nya sama. Sehingga hasilnya dari instruksi tersebut error (tidak dapat dikerjakan).

Untuk mengupdate data secara bersyarat :
mysql>updatenama_table set fieldl=’newvaluefield’ where field2=’valuefield2’;

contoh :
update anggota set alamat=’Jakarta’ where nama=’adnan’ ;

Menghapus Isi Table

Untuk menghapus valuefield pada suatu tabel dapat dipakai syntax;
mysql>delete from nama_table where field=valuefield;

contoh :
delete from anggota where nama=’adnan’;

Menambah/menghapus/mengubah field dari tabel

Bila kita ingin memodifikasi field pada tabel dapat digunakan syntax;
mysql>alter table nama_table add/drop field (typefield());

Menambah field dalam tabel, sintaknya:
mysql>alter table nama_table add field typefield();

Contoh:
alter table anggota add telepon varchar(10);
Perhatikan contoh di bawah :

 Menambah field dalam suatu table dengan mengatur posisi letak field, sintaknya
mysql>alter table nama_table add field typefield() after field;

Contoh :
alter table anggota add kodepos char(5) after alamat;

Menghapus field dalam tabel, sintaknya :
mysql>alter table nama_table drop field;

contoh :
alter table anggota drop telepon;

Mengganti nama dari field table
Untuk mengganti penamaan judul field dari sebuah table gunakan sintak :
mysql>alter table nama_table change name_field name_field_baru typefield();

contoh :
alter table anggota change pekerjaan telepon varchar(12);


Selain dari pengolahan record-record, SQL juga menyediakan fungsi fungsi agregate dalam SQL adalah untuk menghitung hasil tampilan. Karena ia sifatnya adalah untuk di tampilkan maka fungsi tersebut tergolong dalam bagian sintak select. Beberapa jenis fungsinya antara lain :

Nama Fungsi
Fungsi
Sum()
Menghitung jumlah ekspresi numerik
Avg()
Menghitung rata-rata ekspresi numerik
Min()
Menghitung angka minimal ekspresi numerik
Max()
Menghitung angka maximal ekspresi numerik
Count()
Menghitung jumlah non-null ekspresi
Count(*)
Menghitung jumlah baris

Contoh 1:
select sum(umur) from anggota;

Contoh 2:
Select avg(umur) from anggota;


Sub Agregate Dengan Group By
Fungsi Group By adalah untuk menyatukan antara beberapa field dalam sebuah table di mana salah satu field atau lebih menggunakan agregate function. Misalnya, jika kita ingin menampilkan nama dengan rata-rata umur setiap pelajar maka kita harus menggunakan sintak :

mysql>select field1, aggregate_function(field2) from nama_table order by field1;

contoh :
select alamat, avg(umur) from anggota group by alamat;

Menyaring Hasil Agregate Function
Untuk menyaring tampilan setelah dilakukan fungsi agregate, maka harus menggunakan keyword having. Misalnya untuk menyaring pelajar dengan umur di bawah 19 tahun, maka sintaknya adalah :

mysql>select field1, aggregate_function(field2) from nama_table group by field1
having agragate_function(field2) operator_perbandingan valuefield;

contoh :
select alamat, avg (umur) from anggota group by alamat having avg(umur) > 20;