Posted by : Unknown
Senin, 23 Februari 2015
PERINTAH
PERINTAH MY SQL
Membuat, Menampilkan, Membuka dan Menghapus Database
Membuat
Database
CREATE
DATABASE [IF NOT EXISTS] nama_database;
Bentuk
perintah di atas akan membuat sebuah database baru dengan nama nama_database.
Aturan penamaan sebuah database sama seperti aturan penamaan sebuah variabel,
dimana secara umum nama database boleh terdiri dari huruf, angka dan
under-score (_). Jika database yang akan dibuat sudah ada, maka akan muncul
pesan error. Namun jika ingin otomatis menghapus database yang lama jika sudah
ada, aktifkan option IF NOT EXISTS.
CREATE DATABASE
penjualan;
Query
OK, 1 row affected (0.02 sec)
Menampilkan
Database
SHOW
DATABASES;
Hasil dari perintah di
atas akan menampilkan semua database yang sudah ada di MySQL. Berikut ini
contoh hasil dari query di atas :
Membuka Database
USE
penjualan;
Database
changed
Menghapus Database
DROP
DATABASE [IF EXISTS] nama_database;
Bentuk
perintah di atas akan menghapus database dengan nama nama_database. Jika
databasenya ada maka database dan juga seluruh tabel di dalamnya akan dihapus.
Jadi berhati-hatilah dengan perintah ini! Jika nama database yang akan dihapus
tidak ditemukan, maka akan ditampilkan pesan error. Aktifkan option IF EXISTS
untuk memastikan bahwa suatu database benar-benar ada.
DROP
DATABASE penjualan;
Membuat, Mengubah dan Menghapus Tabel
Membuat
Tabel Baru
Bentuk umum SQL untuk
membuat suatu table secara sederhana sebagai berikut :
CREATE
TABLE nama_tabel (
field1 tipe(panjang),
field2 tipe(panjang),
...
fieldn tipe(panjang),
PRIMARY KEY (field_key)
);
field1 tipe(panjang),
field2 tipe(panjang),
...
fieldn tipe(panjang),
PRIMARY KEY (field_key)
);
Bentuk umum di atas merupakan bentuk umum pembuatan
tabel yang sudah disederhanakan. Penamaan tabel dan field memiliki aturan yang
sama dengan penamaan database.
Sebagai contoh, kita
akan membuat tabel baru dengan struktur sebagai berikut :
Nama tabel : pelanggan

Untuk membuat tabel
tersebut di atas, query atau perintah SQL-nya adalah sebagai berikut :
CREATE
TABLE pelanggan (
id_pelanggan varchar(5) NOT NULL,
nm_pelanggan varchar(30) NOT NULL,
alamat text,
telepon varchar (20),
email varchar (50),
PRIMARY KEY(id_pelanggan)
);
id_pelanggan varchar(5) NOT NULL,
nm_pelanggan varchar(30) NOT NULL,
alamat text,
telepon varchar (20),
email varchar (50),
PRIMARY KEY(id_pelanggan)
);
Query OK, 0 rows affected (0.16 sec)
Pada perintah di atas, beberapa hal yang perlu
diperhatikan :
CREATE TABLE
merupakan perintah dasar dari pembuatan table.
pelanggan merupakan nama tabel yang akan dibuat.
id_pelanggan, nm_pelanggan, alamat, telepon dan email merupakan
nama field.
varchar dan text merupakan tipe data dari field
NOT NULL merupakan option untuk menyatakan bahwa suatu field
tidak boleh kosong.
PRIMARY KEY merupakan perintah untuk menentukan field mana
yang akan dijadikan primary key pada tabel.
5, 10, 30 dan 50 di belakang tipe data merupakan panjang maksimal
dari suatu field.
Untuk tipe data date dan text (juga date dan blob) panjang karakter
maksimalnya tidak perlu ditentukan.
Jangan lupa akhiri perintah dengan titik-koma (;)
pelanggan merupakan nama tabel yang akan dibuat.
id_pelanggan, nm_pelanggan, alamat, telepon dan email merupakan
nama field.
varchar dan text merupakan tipe data dari field
NOT NULL merupakan option untuk menyatakan bahwa suatu field
tidak boleh kosong.
PRIMARY KEY merupakan perintah untuk menentukan field mana
yang akan dijadikan primary key pada tabel.
5, 10, 30 dan 50 di belakang tipe data merupakan panjang maksimal
dari suatu field.
Untuk tipe data date dan text (juga date dan blob) panjang karakter
maksimalnya tidak perlu ditentukan.
Jangan lupa akhiri perintah dengan titik-koma (;)
SHOW
TABLES;
Perintah di atas akan menampilkan seluruh tabel yang
sudah ada dalam suatu database.
Contoh hasil dari perintah di atas adalah sebagai
berikut :
DESC
pelanggan;
DESC
merupakan singkatan dari DESCRIBE
(dalam query bisa ditulis lengkap atau hanya 4 karakter pertama) dan pelanggan adalah nama tabel yang akan
dilihat strukturnya. Dari perintah di atas, akan ditampilkan struktur tabel pelanggan sebagai berikut :

Dari struktur tabel mhs yang ditampilkan di atas,
dapat diketahui bahwa:
Terdapat 5 (lima) field dengan tipe masing-masing.
Primary Key dari tabel pelanggan adalah id_pelanggan. Lihat kolom
Key pada field id_pelanggan.
Untuk field id_pelanggan dan nm_pelanggan defaultnya tidak boleh
kosong. Lihatlah kolom Null dan Default pada field id_pelanggan dan
nm_pelanggan.
Untuk field alamat, telepon dan email default-nya boleh kosong.
Lihatlah kolom Null dan Default pada field alamat dan telepon.
Primary Key dari tabel pelanggan adalah id_pelanggan. Lihat kolom
Key pada field id_pelanggan.
Untuk field id_pelanggan dan nm_pelanggan defaultnya tidak boleh
kosong. Lihatlah kolom Null dan Default pada field id_pelanggan dan
nm_pelanggan.
Untuk field alamat, telepon dan email default-nya boleh kosong.
Lihatlah kolom Null dan Default pada field alamat dan telepon.
Mengubah
Struktur Table dengan ALTER
ALTER
TABLE nama_tabel alter_options;
dimana :
ALTER TABLE
merupakan perintah dasar untuk mengubah tabel.
nama_tabel merupakan nama tabel yang akan diubah strukturnya.
alter_options merupakan pilihan perubahan tabel. Option yang bias
digunakan, beberapa di antaranya sebagai berikut :
nama_tabel merupakan nama tabel yang akan diubah strukturnya.
alter_options merupakan pilihan perubahan tabel. Option yang bias
digunakan, beberapa di antaranya sebagai berikut :
» ADD
definisi_field_baru
Option ini digunakan untuk menambahkan field baru dengan
“definisi_field_baru” (nama field, tipe dan option lain).
Option ini digunakan untuk menambahkan field baru dengan
“definisi_field_baru” (nama field, tipe dan option lain).
» ADD INDEX
nama_index
Option ini digunakan untuk menambahkan index dengan nama
“nama_index” pada tabel.
Option ini digunakan untuk menambahkan index dengan nama
“nama_index” pada tabel.
» ADD PRIMARY
KEY (field_kunci)
Option untuk menambahkan primary key pada tabel
Option untuk menambahkan primary key pada tabel
» CHANGE
field_yang_diubah definisi_field_baru
Option untuk mengubah field_yang_diubah menjadi
definisi_field_baru
Option untuk mengubah field_yang_diubah menjadi
definisi_field_baru
» MODIFY
definisi_field
Option untuk mengubah suatu field menjadi definisi_field
Option untuk mengubah suatu field menjadi definisi_field
» DROP
nama_field Option untuk menghapus field nama_field
» RENAME TO
nama_tabel_baru Option untuk mengganti nama table
Beberapa contoh variasi perintah ALTER untuk mengubah struktur suatu
tabel antara lain :
ALTER
TABLE pelanggan ADD
tgllahir date NOT NULL;
2. Menambahkan primary
key pada suatu tabel
ALTER
TABLE pelanggan ADD
PRIMARY KEY(id_pelanggan);
3. Mengubah tipe field
tgllahir menjadi varchar dalam tabel pelanggan
ALTER
TABLE pelanggan MODIFY
tgllahir varchar(8) NOT NULL;
ALTER
TABLE pelanggan DROP
tgllahir;
Mengubah
Nama Tabel
Untuk mengubah nama
suatu tabel, dapat menggunakan perintah SQL sbb :
RENAME
TABLE pelanggan TO
plg;
ALTER TABLE plg RENAME TO pelanggan;
ALTER TABLE plg RENAME TO pelanggan;
Perintah di atas akan mengubah tabel pelanggan
menjadi plg dan sebaliknya.
Menghapus
Tabel
DROP
TABLE nama_tabel;
DROP
TABLE pelanggan;
Menambah Record dengan INSERT
INSERT
INTO
nama_tabel VALUES
(‘nilai1’,’nilai2’,...);
atau dapat dengan
bentuk sebagai berikut :
INSERT
INTO
nama_tabel(field1,field2,...) VALUES
(‘nilai1’,’nilai2’,...);
INSERT
INTO
nama_tabel SET field1=’nilai1’, field2=’nilai2’,...;
Sebagai contoh, kita
akan menambahkan sebuah record ke dalam tabel pelanggan yang telah kita buat
sebelumnya. Berikut ini perintah SQL untuk menambahkan sebuah record ke dalam
tabel pelanggan :
INSERT
INTO
pelanggan VALUES ('P0001', 'Achmad
Solichin','Jakarta Selatan', '0217327762', 'achmatim@gmail.com');
Query OK, 1 row affected (0.00 sec)
SELECT
* FROM pelanggan;
Dan berikut ini hasil dari perintah SQL di atas :

Mengedit Record dengan UPDATE
Proses update bisa
sewaktu-waktu dilakukan jika terdapat data atau record dalam suatu tabel yang
perlu diperbaiki. Proses update ini tidak menambahkan data (record) baru,
tetapi memperbaiki data yang lama. Perubahan yang terjadi dalam proses update
bersifat permanen, artinya setelah perintah dijalankan tidak dapat di-cancel
(undo).
UPDATE
nama_tabel SET field1=’nilaibaru’ [WHERE kondisi];
Pada perintah untuk update di atas :
UPDATE
merupakan perintah dasar untuk mengubah record tabel.
nama_tabel merupakan nama tabel yang akan diubah recordnya.
Perintah SET diikuti dengan field-field yang akan diubah yang mana
diikuti juga dengan perubahan isi dari masing-masing field. Untuk
mengubah nilai dari beberapa field sekaligus, gunakan koma (,) untuk
memisahkan masingmasing field.
Perintah WHERE diikuti oleh kondisi tertentu yang menentukan
record mana yang akan diedit (diubah). Perintah WHERE ini boleh
ada boleh juga tidak. Jika WHERE tidak ditambahkan pada perintah
update maka semua record dalam tabel bersangkutan akan berubah.
nama_tabel merupakan nama tabel yang akan diubah recordnya.
Perintah SET diikuti dengan field-field yang akan diubah yang mana
diikuti juga dengan perubahan isi dari masing-masing field. Untuk
mengubah nilai dari beberapa field sekaligus, gunakan koma (,) untuk
memisahkan masingmasing field.
Perintah WHERE diikuti oleh kondisi tertentu yang menentukan
record mana yang akan diedit (diubah). Perintah WHERE ini boleh
ada boleh juga tidak. Jika WHERE tidak ditambahkan pada perintah
update maka semua record dalam tabel bersangkutan akan berubah.
Perhatikan beberapa contoh perintah
UPDATE tabel pelanggan berikut ini !
1. Mengubah alamat
menjadi “Tangerang” untuk pelanggan yangmempunyai id ‘P0001’
UPDATE
pelanggan SET alamat='Tangerang' WHERE id_pelanggan='P0001';
Dan jika
query di atas berhasil dieksekusi maka akan ditampilkan hasil
sebagai berikut :
sebagai berikut :
Query OK, 1 row
affected (0.27 sec) Rows matched: 1
Changed: 1 Warnings: 0
2. Mengubah email
menjadi “budi@luhur.com” dan alamat menjadi“Bandung” untuk pelanggan yang mempunyai id_pelanggan ‘P0002’
UPDATE
pelanggan SET
email='budi@luhur.com', alamat='Bandung' WHERE
id_pelanggan='P0002';
Menghapus Record dengan DELETE
Proses delete dilakukan
jika terdapat data atau record dalam suatu tabel yang perlu dihapus atau
dihilangkan. Perubahan yang terjadi dalam proses delete bersifat permanen,
artinya setelah perintah dijalankan tidak dapat di-cancel (undo). Jadi
berhati-hatilah dengan perintah delete !
DELETE
FROM
nama_tabel [WHERE kondisi];
Pada perintah untuk delete di atas :
DELETE FROM
merupakan perintah dasar untuk menghapus suatu
record dari tabel.
record dari tabel.
nama_tabel merupakan nama tabel yang akan dihapus
recordnya.
Perintah WHERE diikuti oleh kondisi tertentu yang
menentukan
record mana yang akan dihapus (didelete). Perintah WHERE ini boleh
ada boleh juga tidak. Namun demikian, jika WHERE tidak
ditambahkan pada perintah delete maka semua record dalam table
bersangkutan akan terhapus. Jadi jangan lupa menambahkan WHERE
jika kita tidak bermaksud mengosongkan table.
record mana yang akan dihapus (didelete). Perintah WHERE ini boleh
ada boleh juga tidak. Namun demikian, jika WHERE tidak
ditambahkan pada perintah delete maka semua record dalam table
bersangkutan akan terhapus. Jadi jangan lupa menambahkan WHERE
jika kita tidak bermaksud mengosongkan table.
Perhatikan beberapa contoh perintah DELETE dari tabel pelanggan berikut ini
!
DELETE
FROM pelanggan WHERE
id_pelanggan='P0005';
dihapus ada, maka akan ditampilkan hasil sebagai berikut :
Query OK,
1 row affected (0.11 sec)
DELETE FROM pelanggan WHERE alamat='Bandung';
Menampilkan Record dengan SELECT
Perintah SELECT
digunakan untuk menampilkan sesuatu. Sesuatu di sini bisa berupa sejumlah data
dari tabel dan bisa juga berupa suatu ekspresi. Dengan SELECT kita bisa
mengatur tampilan atau keluaran sesuai tampilan yang diinginkan.
SELECT
[field | *] FROM nama_tabel [WHERE kondisi];
Perhatikan beberapa contoh perintah SELECT dari
tabel pelanggan berikut ini !
SELECT
* FROM pelanggan;
Dan jika query di atas berhasil dieksekusi maka akan
ditampilkan hasil sebagai berikut :

pelanggan dalam tabel pelanggan
SELECT
id_pelanggan, nm_pelanggan FROM pelanggan;
Jika query di atas berhasil dieksekusi maka akan
ditampilkan hasil sebagai berikut :

3. Menampilkan id, nama
dan alamat dari data pelanggan yangmempunyai id P0006
SELECT
id_pelanggan, nm_pelanggan, alamat FROM
pelanggan WHERE id_pelanggan =
'P0006';
Hasil query di atas adalah sbb :

4. Menampilkan id, nama
dan email data semua pelanggan yangmempunyai email di yahoo
SELECT
id_pelanggan, nm_pelanggan, email FROM
pelanggan WHERE email LIKE
'%yahoo%';
Hasil query di atas adalah sbb :

Berikut ini operator perbandingan yang dapat
digunakan untuk membandingkan dua buah nilai dalam MySQL :
Operator
=, akan bernilai TRUE jika nilai yang dibandingkan sama.
Operator !=
atau <>, akan bernilai TRUE jika nilai yang
dibandingkan TIDAK SAMA (berbeda).
dibandingkan TIDAK SAMA (berbeda).
Operator
>, akan bernilai TRUE jika nilai yang pertama lebih besar
dari nilai kedua.
dari nilai kedua.
Operator
>=, akan bernilai TRUE jika nilai yang pertama lebih besar
atau sama dengan nilai kedua.
atau sama dengan nilai kedua.
Operator
<, akan bernilai TRUE jika nilai yang pertama lebih kecil
dari nilai kedua.
dari nilai kedua.
Operator
<=, akan bernilai TRUE jika nilai yang pertama lebih kecil
atau sama dengan nilai kedua.
atau sama dengan nilai kedua.
5. Menampilkan data
semua pelanggan yang beralamat di JakartaSelatan dan mempunyai email di gmail.
SELECT
id_pelanggan, nm_pelanggan, alamat, email
FROM pelanggan WHERE alamat = 'Jakarta Selatan'
&& email LIKE '%gmail.com';
Hasil query di atas adalah sbb :

Berikut ini operator penghubung yang dapat digunakan untuk menghubungkan antara dua
kondisi dalam MySQL :
Operator
&& atau AND, akan
menghubungkan dua kondisi dimana
akan bernilai TRUE jika kedua kondisi bernilai TRUE.
akan bernilai TRUE jika kedua kondisi bernilai TRUE.
Operator ||
atau OR, akan menghubungkan dua
kondisi dimana akan
bernilai TRUE jika salah satu atau kedua kondisi bernilai TRUE.
bernilai TRUE jika salah satu atau kedua kondisi bernilai TRUE.
Operator !,
akan me-reverse nilai suatu kondisi logika.
6. Menampilkan semua data
pelanggan secara urut berdasarkan namapelanggan dengan perintah ORDER BY
SELECT
id_pelanggan, nm_pelanggan FROM
pelanggan ORDER BY
nm_pelanggan;
Hasil query di atas adalah sbb :

7. Menampilkan semua
data pelanggan secara urut berdasarkan namapelanggan secara DESCENDING
SELECT
id_pelanggan, nm_pelanggan FROM
pelanggan ORDER BY nm_pelanggan DESC;
Hasil query di atas adalah sbb :

8.
Menampilkan 3 record (data) pertama dari tabel pelanggan secara
urut berdasarkan nama pelanggan dengan LIMIT
urut berdasarkan nama pelanggan dengan LIMIT
SELECT
id_pelanggan, nm_pelanggan FROM
pelanggan ORDER BY nm_pelanggan LIMIT 0,3;
Hasil query di atas adalah sbb :

Keterangan
Pada query di atas bentuk LIMIT digunakan untuk membatasi hasil tampilan. LIMIT banyak
digunakan untuk menampilkan data yang relatif banyak. Format fungsi LIMIT
adalah sebagai berikut :
LIMIT
awal, jumlah_record
SELECT COUNT(*)FROM pelanggan;
Hasil query di atas adalah sbb :
