|
Pada artikel sebelumnya kita telah belajar 5 operasi yang dilakukan di MySQL Client. Masih ada beberapa lagi operasi-operasi yang masih harus dibahas. Kita akan lanjutkan pembahasan itu sekarang. Jika sebuah tabel sudah “terlanjur” jadi namun ternyata diperlukan modifikasi-modifikasi tertentu, digunakan perintah Alter Table. Sintaksnya adalah sebagai berikut:
ALTER TABLE namatabel spesifikasi [, spesifikasi, ...]
Daftar spesifikasi yang disediakan adalah sebagai berikut:
- ADD [COLUMN] definisi_pembuatan [FIRST | AFTER nama_kolom ]
- ADD [COLUMN] (definisi_pembuatan, definisi_pembuatan,...)
- ADD INDEX [nama_indeks] (nama_kolom_indeks,...)
- ADD PRIMARY KEY (nama_kolom_indeks,...)
- ADD UNIQUE [nama_indeks] (nama_kolom_indeks,...)
- ADD FULLTEXT [nama_indeks] (nama_kolom_indeks,...)
- ADD [CONSTRAINT symbol] FOREIGN KEY nama_indeks (nama_kolom_indeks,...) [definisi_referensi]
- ALTER [COLUMN] namakolom {SET DEFAULT literal | DROP DEFAULT}
- CHANGE [COLUMN] namakolom_lama definisi_pembuatan
- MODIFY [COLUMN] definisi_pembuatan
- DROP [COLUMN] namakolom
- DROP PRIMARY KEY
- DROP INDEX nama_indeks
- RENAME [TO] namabaru
- ORDER BY kolom
- table_options
Contoh: mysql> alter table coba add column field4 real(10,3);
Perintah ini digunakan untuk menambah kolom bernama field4 dengan tipe data real. Pada akhir perintah, MySQL akan menampilkan informasi sebagai berikut: Query OK, 1 row affected (0.30 sec) Records: 1 Duplicates: 0 Warning: 0 mysql> alter table coba add index f4idx (field4);
Perintah ini digunakan untuk menambahkan indeks bernama f4idx pada kolom field4.
Untuk menghapus tabel digunakan perintah Drop Table. Sintaksnya adalah sebagai berikut:
DROP TABLE [IF EXISTS] namatabel
Gunakan perintah ini dengan bijaksana, karena MySQL tidak akan memberi peringatan.
Query data adalah pengambilan data dari satu tabel atau lebih. Perintah yang digunakan adalah Select. Sintaksnya adalah sebagai berikut:
- SELECT [DISTINCT | DISTINCTROW | ALL] ekspresi
- [INTO {OUTFILE | DUMPFILE} 'namafile' export_options]
- [FROM referensi_tabel
- [WHERE kondisi]
- [GROUP BY {unsigned_integer | col_name | formula} [ASC | DESC], ...]
- [HAVING kondisi]
- [ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC] ,...]
- [LIMIT [offset,] rows]
- [PROCEDURE namaprosedur]
- [FOR UPDATE | LOCK IN SHARE MODE]]
Ekspresi adalah nama-nama kolom yang datanya hendak diambil. Jika semua kolom hendak diambil ekspresi dapat diganti dengan lambang bintang (*). Contoh penggunaannya adalah sebagai berikut: mysql> select * from coba;
Perintah ini digunakan untuk mengambil seluruh data dari tabel coba. Outputnya dapat Anda lihat pada gambar di bawah ini
mysql> select * from coba where field4 > 100;
Perintah ini digunakan untuk mengambil seluruh kolom dari tabel coba namun untuk record-record yang memenuhi syarat field4 lebih besar daripada 100. Outputnya dapat Anda lihat pada gambar di bawah ini
Bagaimana jika seandainya ingin diambil data dari 2 tabel yang saling berhubungan? Nama-nama tabel tersebut dinyatakan dengan alias. Contoh: mysql> select t1.name, t2.salary from employee AS t1, info AS t2 where t1.name = t2.name; mysql> select t1.name, t2.salary from employee t1, info t2 where t1.name = t2.name; Pada contoh tersebut nama tabel employee diberi alias t1 dan nama tabel info diberi alias t2.
Untuk menyisipkan data baru ke dalam tabel digunakan perintah Insert. Data yang disisipkan dapat berupa data yang diambil dari tabel lain, ataupun data yang berupa nilai-nilai tertentu yang disebutkan secara eksplisit. Untuk data yang diambil dari tabel lain, sintaksnya adalah sebagai berikut:
INSERT [INTO] namatabel [(namafield,...)] perintah SELECT
Untuk data yang disebutkan secara eksplisit, sintaksnya adalah sebagai berikut:
INSERT [INTO] namatabel [(namafield,...)] VALUES ekspresi
Contoh: mysql> insert into cobalagi select * from coba;
Perintah ini digunakan untuk menyisipkan data ke tabel cobalagi yang berasal dari tabel coba. mysql> insert into coba(field1,field2,field3,field4) values(‘xyz’,’01-01-01’,100,50.25);
Perintah di atas digunakan untuk menyisipkan data ke tabel coba dengan nilai masing-masing field telah ditentukan yaitu sebagai berikut: field1 = ‘xyz’ field2 = ’01-01-01’ field3 = 100 field4 = 50.25
Untuk keperluan update data digunakan perintah Update. Sintaksnya adalah sebagai berikut: UPDATE namatabel SET kriteria WHERE kondisi Contoh: mysql> update coba set field2 = ’01-02-03’ where field1 = ‘aaa’ Perintah ini digunakan untuk memperbaharui nilai field2 menjadi ’01-02-03’ untuk record yang nilai field1-nya adalah ‘aaa’
Untuk menghapus record dari tabel digunakan perintah Delete. Sintaksnya adalah sebagai berikut: DELETE FROM namatabel WHERE kondisi Contoh: mysql> delete from coba where field1 = ‘xyz’;
Perintah ini digunakan untuk menghapus record dari tabel coba yang nilai field1-nya adalah ‘xyz’. Nah, kini Anda telah belajar bagaimana melakukan operasi-operasi dasar dengan menggunakan MySQL client.
Berikut ini akan diberikan sebuah tips untuk mempermudah pekerjaan Anda. Jika perintah yang harus Anda ketikkan pada shell hanya sedikit, tentu tidak menjadi masalah. Bagaimana kalau banyak? Kalau diketikkan satu persatu, waaah capek deh.. :-D. Untuk mempermudahnya, Anda dapat menggunakan teks editor (misalnya Macromedia Dreamweaver, Notepad, gedit, vi, atau lainnya) untuk mengetikkan perintah-perintah tersebut terlebih dahulu. Jumlah yang harus Anda ketikkan memang tetap sama saja, tapi setidaknya pada teks editor terdapat fasilitas copy dan paste. Setelah itu simpan file tersebut dengan nama file berekstensi .sql, misalnya file1.sql, file2.sql, dan sebagainya. File tersebut nantinya dapat disisipkan ke MySQL dari shell atau command prompt dengan cara sebagai berikut: # mysql namadatabase < namafile.sql atau C:\mysql\bin> mysql namadatabase < namafile.sql Pada artikel selanjutnya kita akan belajar mengenai tipe-tipe data di MySQL.
|