1 MODUL 13 STRUKTRURED QUERY LANGUAGE SQL merupakan jantung dari pemograman client/server, karena semua pemograman client /sever untuk memanipulasi da...
SQL merupakan jantung dari pemograman client/server, karena semua pemograman client /sever untuk memanipulasi data semuanya menggunakan SQL ini. Pada dasarnya perintah – perintah SQL dibagi dua yaitu DML (data manipulation language) dan DDL (data Definition language). Perintah DML dgunakan untuk memanipulasi table, seperti menambah record (insert), menghapus record (delete) dsb. Sedangkan perintah perintah pada DDL digunakan untuk membuat table (CREATE TABLE), membuat indexs (CREATE INDEX), dan sebagainya. Berikut adalah beberapa perintah-perintah sql dasar : Clausa Select Format Penulisan : Select [distinct] kolom from table [where kondisi_pencarian] [order by pengurutan] [group by group_list] [HAVING having_condition] Misal kita menggunakan table yang berada pada BDE Alias DBDEMOS Contoh : 1. Select distinct continent from country Perintah diaatas akan menampilkan seluruh field continent dari table country, karena perintah diatas memakai perintah distinct maka isi field continent yang sama akan ditampilkan satu kali saja. 2. Select * from country Printah diatas akan menampilkan seluruh field dan record yang ada pada table counry. * digunakan untuk mewakili seluruh kolom/field. Klausa where Klausa where digunakan untuk memfilter record yang akan ditampilkan Contoh : 1. Select * from country where population >= 10000000 Perintah diatas akan menampilkan seluruh record pada table country dimana population samdenganatau lebih besar 10 juta. 2. Select * from country where population >= 10000000 and where population <= 50000000
Perintah diatas akan menampilkan seluruh record pada table country dimana populasinya adalah lebih besar atau sama dengan 10 juta dan lebih kecil atau sama dengan 50 juta. Contoh kasus : 1. Tampilkan nama negara yang mempunyai hurup awal ‘A’ Select * from country where name like ‘A%’ 2. Tampilkan nama negara yang mempuyai hurup akhir ‘a’ Select * from country where name like ‘%a’ 3. Tampilkan nama segara yang mengandung hurup ‘sia’ Select * from county where name like ‘%sia%’ 4. Tampilkan semua nama negara dimana hurup awal bebas tetapi dibelakangnya mengandung kata ‘ndonesia’ Select * from country where name like ‘_ndonesia’ Berdasarkan contoh diatas dapat kita simpulkan bahwa ‘%’ dapat mewakili beberapa hurup sedangkan ‘_’ hanya mewakili satu hurup saja. Clausa Order By Clausa order by digunakan untuk mengurutkan berdasarkan kolom/field tertentu Contoh : 1. Select * from county order by population Perintah diatas akan menampilkan semua nagara yang diurutkan berdasarkan field pupolation dari kecil ke besar. 2. Select * from county order by population Desc Perintah diatas akan menampilkan semua negara yang diurutkan berdasarkan field population dari besar ke kecil. 3. Select * from county order by population, name Perintah diatas akan menampilkan semua negara yang diututkan berdasarkan population dan name Clausa Group by Clausa ini digunakan untuk mengelompokan data berdasarkan Kolom tertentu Contoh : Select continent from country group by continent Perintah diatas akan menampilkan record continent pada table country yang dikelompokan berdasarkan continent. Yang perlu diperhatikan dari clausa gropu by ini adalah daftar kolom yang akan ditampilkan harys sama dengan kolom pada clausa group by.
Clausa Having Clausa ini digunakan untuk mendefinisikan batasan seleksi berdasarkan Group By sintaks yang digunakan : Select [kolom1, kolom2…] from [nama_table] group by [kolom group] having [batasan_group] Tes clausa select : Untuk mencoba clausa select coba anda buat program seperti pada tampilan dibawah :
Gambar 1. Aplikasi untuk tes Clausa Select Set properties untuk masing masing komponent : 1. Pada Tquery Set properties Databasename menjadi DBDEMOS. 2. Pada Datasource set properties properties Dataset menjadi Tquery. 3. Pada dbgrid1 set properties datasource menjadi Datasource1 Pada even onlclik tombol jalankan isi dengan srcip diwawah ini ; Procedure TForm1.Button1Click(Sender: TObject); begin Query1.Close; Query1.SQL.Clear; Query1.Sql.Add(edit1.Text);
Query1.Open; end; Query berparameter Query berparameter adalah suatu perintah sql dimana kondisi dari perintah sql ini kita buat berparameter. Query berparameter ini sangat bermanfaat untuk meningkatkan kinerja program kita. Contoh : select * from country where name like 'P%' Pernyataan diatas dapat kita buat fleksibel dengan menjadikan ‘P%’ sebagai parameter, dengan demikian anda bias mengisi parameter tersebut dengan karakter atau string apa saja, dari contoh diatas kita jadikan menjadi query berparameter menjadi : select * from country where name like :nama atau select * from country where name =:nama Parameter nama dapat diganti dengan string lain, karena parameter tersebut bias dikatakan sama dengan variable. Untuk bisa menggunakannya anda harus set dulu type data dari parameter tersebut apakah sebagai string, integer dan lain-lain, sebagai contoh coba anda buat program berikut ini :
Gambar 2. aplikasi Pencarian menggunakan clausa select Seting properties : 1. Untuk Tquery Pada properties SQL seperti berikut :
Click … Sehingga muncul dialog box
Gambar 3. String List Editor
Masukan statement SQl seperti diatas, setelah selesai tekan Ok dan masih pada Komponent Tquery Set properties untuk Params Klick … sehingga muncul Dialoh box seperti berikut :
Gambar 4. Editing Query Parameter Click pada Parameter Nama dan pada properties dataType pilih ftString. 2. Masih Pada Tquery Set properties Databasename menjadi DBDEMOS. 3. Pada Datasource set properties properties Dataset menjadi Tquery. 4. Pada dbgrid1 set properties datasource menjadi Datasource1 Pada even Onclick jalankan isi dengan script berikut ini : procedure TForm1.Button1Click(Sender: TObject); begin Query1.Close; Query1.Prepare; //untuk Clausa Like Query1.Params[0].Value:='%'+edit1.Text+'%'; // Untuk kriteria dengan = //Query1.Params[0].Value:=edit1.Text; Query1.Open; end; Coba anda jalankan program diatas, apa yang terjadi