ARSIP BULANAN : October 2012

tugas 3

05 October 2012 14:51:24 Dibaca : 182

PERINTAH DASAR MY SQL (DDL dan DML)


Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language (DDL) dan Data Manipulation Language (DML).Implementasi DDL dan DML berbeda untuk tiap sistemmanajemen basis data (SMBD),namun secara umum implementasi tiap bahasa ini memiliki bentuk standar yangditetapkan ANSI.Artikel ini akan menggunakan bentuk paling umum yang dapat digunakan padakebanyakan SMBD.

 

1. DDL (DATA DEFINITION LANGUAGE)

DDL ( Data Definition Language ) adalah sebuah perintah SQL yang berhubungan dengan pendefinisian suatu database dan tabel. Beberapa perintah dasar yang termasuk dalam DDL antara lain.

      

   1. CREATE

 

Fungsi : Command CREATE ini berfungsi untuk membuat sebuah database ataupun membuat sebuah table yang berada di dalam database.

Syntax : CREATE database nama_database;

Parameter   : -

Contoh : CREATE database apotik;

Penjelasan : perintah CREATE diatas akan membuat sebuah database dengan nama apotik.

 

      2. SHOW

 

Fungsi : Command SHOW ini berfungsi untuk menampilkan database ataupun table yang telah kita buat sebelumnya.

Syntax : SHOW databases;

Parameter : -

Contoh : SHOW databases;

Penjelasan : perintah SHOW diatas akan memperlihatkan semua database yang ada.

 

     3. USE

 

Fungsi : Command  USE ini berfungsi untuk membuka/mengaktifkan/memasuki database yang telah kita buat. Setelah kita masuk kedalam database yang telah kita buat, barulah kita bisa memanipulasi data yang ada, termasuk untuk membuat table didalam database tersebut.

Syntax : USE nama_database;

Parameter : -

Contoh : USE apotik;

Penjelasan : perintah diatas akan mengaktifkan database dengan nama apotik sehingga kita dapat memanipulasi data yang ada.

 

      4. ALTER

 

Fungsi : Command ALTER ini berfungsi untuk mengubah struktur dari suatu table. Mengubah disini tidak hanya memperbaharui struktur table yang ada, tetapi juga mengubah nama field, menambahkan primary key, mengubah tipe field, maupun menghapus field yang telah dibuat sebelumnya.

Syntax : ALTER TABLE nama_tabel parameter_option;

Parameter : add, modify, drop

Contoh : ALTER TABLE obat ADD harga int (6);

Penjelasan : perintah diatas akan menambahkan field harga kedalam tabel obat.

 

       5. DROP

 

Fungsi: Command DROP ini berfungsi untuk menghapus, baik database, table, maupun field yang telah diinputkan ke dalam table.

Syntax : DROP TABLE nama_tabel;

Parameter : -

Contoh : DROP TABLE supplier;

Penjelasan : perintah diatas akan menghapus tabel supplier pada database apotik.

 

 

2. DML (DATA MANIPULATION LANGUAGE)

 

Data Manipulation Language (DML) digunakan dalam memanipulasi dan pengambilan data pada database.

 

Manipulasi data, dapat mencakup:

 

-Pemanggilan data yang tersimpan dalam database (query).

 

-Penyisipan/penambahan data baru ke database.

 

-Penghapusan data dari database.

 

-Pengubahan data pada database.

 

Beberapa perintah dasar yang termasuk dalam DDL antara lain.

 

1. SELECT

 

Fungsi : Command SELECT ini berfungsi untuk menampilkan sesuatu. Menampilkan disini tidak hanya menampilkan data dari sebuah table saja, tetapi juga untuk menampilkan suatu ekspresi. Seperti menampilkan hanya field yang memiliki kategori Suplement saja.

 

Syntax : SELECT * FROM nama_tabel;

 

Parameter : from, order by, where, dll

 

Contoh : SELECT * FROM obat;

 

Penjelasan : perintah diatas akan menampilkan semua isi pada tabel obat.

 

 

 

2. DESC

 

Fungsi : Command DESC ini berfungsi untuk menampilkan struktur tabel yang telah dibuat. Apa saja field yang telah dibuat, type data dari field tersebut, dan primary key akan terlihat disini.

 

Syntax  : DESC nama_table;

 

Parameter : -

 

Contoh : DESC obat;

 

Penjelasan : perintah diatas akan memperlihatkan stuktur dari tabel obat yang telah dibuat.

 

 

 

3. INSERT INTO

 

Fungsi : Command INSERT INTO ini berfungsi untuk menambahkan data/record dalam suatu tabel yang telah dibuat.

 

Syntax : INSERT INTO nama_tabel VALUES (‘isi_field1’ , ‘isi_field2’,……);

 

Parameter : values, set

 

Contoh : INSERT INTO obat VALUES (’CO012’,’Corsel’,’Suplement’,’13’,’183500’);

 

Penjelasan : perintah diatas akan membuat sebuah record baru dalam tabel obat dengan id_obat = CO012, nama_obat = Corsel, kategori = Suplement, jumlah = 13, dan harga = 183500.

 

 

 

4. UPDATE

 

Fungsi : Command UPDATE ini berfungsi untuk merubah/memperbaharui data yang telah ada di dalam tebel.

 

Syntax : UPDATE nama_tabel SET nama_field = ’nilai_baru’ WHERE nama_field = ’kondisi’ ;

 

Parameter : set, where

 

Contoh : UPDATE obat SET id_obat = ‘CE008’ WHERE nama_obat = ‘Cetoros’;

 

Penjelasan : perintah diatas akan mengubah id_obat BD019 menjadi CE008 pada tabel obat yang memiliki nama_obat Cetoros.

 

 

 

5. DELETE FROM

 

Fungsi  : Command DELETE FROM ini berfungsi untuk menghapus record yang ada pada sebuah tabel.

 

Syntax : DELETE FROM nama_tabel WHERE nama_field =’option’;

 

Parameter : where

 

Contoh : DELETE FROM obat WHERE id_obat =’CO012’;

 

Penjelasan : perintah diatas akan menghapus record dari tabel obat yang memiliki id_obat CO012.

 

 

 

6. EXPLAIN

 

Fungsi : Command EXPLAIN ini memiliki fungsi yang sama seperti Desc yaitu berfungsi untuk menampilkan struktur tabel yang telah dibuat, seperti nama_field, type data dari field tersebut, dan primary key.

 

Syntax : EXPLAIN nama_table;

 

Parameter : -

 

Contoh : EXPLAIN obat;

 

Penjelasan : perintah diatas akan memperlihatkan stuktur dari tabel obat yang telah dibuat.

 

 

 

7. SELECT DESCENDING

 

Fungsi : Command SELECT DESCENDING ini berfungsi menampilkan semua data dari bawah ke atas berdasarkan field yang telah ditentukan.

 

Syntax : SELECT field1, field2, dan seterusnya FROM nama_tabel ORDER BY field yang jadi acuan DESC;

 

Parameter : from, order by, desc

 

Contoh : SELECT id_obat, nama_obat, jumlah FROM BY obat ORDER BY id_obat DESC;

 

Penjelasan : Perintah diatas akan menampilkan data pada id_obat, nama_obat dan jumlah pada tabel obat dan yang menjadi acuan pengurutan data dari bawah ke atas adalah id_obat.

 

 

 

8. SELECT COUNT

 

Fungsi : Command SELECT COUNT ini berfungsi menampilkan jumlah record yang ada dalam suatu tabel.

 

Syntax : SELECT COUNT(*)FROM nama_tabel;

 

Parameter : count, from

 

Contoh : SELECT COUNT(*)FROM obat;

 

Penjelasan : Perintah diatas menampilkan jumlah record yang ada pada tabel obat.

 

 

 

9. SELECT MAX

 

Fungsi : Command SELECT MAX ini berfungsi untuk mencari nilai tertinggi pada sebuah field di tabel.

 

Syntax : SELECT MAX(nama_field) FROM nama_tabel;

 

Parameter : max, from

 

Contoh : SELECT MAX(jumlah) FROM obat;

 

Penjelasan : Perintah diatas akan menampilkan nilai tertinggi dari field jumlah pada tabel obat.

 

 

 

10. SELECT MIN

 

Fungsi : Command SELECT MIN ini berfungsi untuk mencari nilai terendah pada sebuah field di tabel.

 

Syntax : SELECT MIN(nama_field) FROM nama_tabel;

 

Parameter : min, from

 

Contoh : SELECT MIN(jumlah) FROM obat;

 

Penjelasan : Perintah diatas akan menampilkan nilai terendah dari field jumlah pada tabel obat.

 

 

3.DCL (DATA CONTROL LANGUAGE)

 

DCL merupakan perintah SQL yang berhubungan dengan pengaturan hak akses user MySQL, baik terhadap server, database, tabel, maupun field. Perintah SQL yang termasuk dalam DCL antara lain :

 

- GRANT : Perintah ini digunakan untuk memberikan hak/izin akses oleh administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus (DELETE), mengubah (UPDATE) dan hak khusus berkenaan dengan sistem databasenya. SINTAKS : GRANT privileges ON tbname TO user CONTOH : grant select, update, insert, delete on perpustakaan.buku to 'ali'@'localhost'; - REVOKE : Perintah ini memiliki kegunaan terbalik dengan GRAN, yaitu untuk menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh administrator.

 

SINTAKS : REVOKE privileges ON tbname FROM user

 

CONTOH : revoke select, update, insert, delete on perpustakaan.buku from 'ali'@'localhost';

 

4. DQL (DATA QUERY LANGUAGE)

Untuk melakukan Query dengan Doctrine tidak lah sulit, karena pola pendeklarasiannya memang dibuat semirip mungkin dengan SQL, bahkan lebih praktis. Penulisan Query, sebaiknya dilakukan pada layer Controller, atau dalam symfony kita biasa lakukan di action class. Hasil Query tersebut baru disajikan sesuai kebutuhan pada tampilan web (template).

Query Select Sederhana?

$data_user = "SELECT * FROM  user";

artinya untuk mengambil semua field data pada table user. Dalam Query Doctrine kita bisa menuliskan seperti berikut ini,

$this->data_user = Doctrine::getTable('User')->findAll();

 

Query Select untuk Primary Key tertentu

$data_user = "SELECT * FROM user WHERE (id = '1')";

Maka dalam Query Doctrine kita dapat menuliskan seperti ini,

$this->data_user = Doctrine::getTable('User')->find(1);

Query Select mencari field tertentu

$data_user = "SELECT * FROM user u WHERE (u.name = 'sule')";

pada contoh diatas kita menggunakan alias ‘u‘ untuk table user, dan kemudian menambahkan syarat bahwa field name harus terisi oleh ‘sule‘. Dalam Doctrine, penulisannya semakin mudah.

$this->data_user = Doctrine::getTable('User')->findByName('sule');

 

Query Select dengan beragam Syarat

Berikut ini contoh pengunaan syarat yang lumayan kompleks,

$this->data_user = Doctrine_Query::create()

                      ->from('User u')

                      ->where('u.name = "sule" ')