Query Adalah komponen yang berfungsi untuk memanipulasi data dalam tabel dengan menggunakan perintah-perintah SQL (Structure Query Language). Query ini dapat diambil dari Tab BDE. BUAT STRUKTUR TABEL DENGAN DATABASE ACCESS Nama Data Base : DBQuery.Mdb FieldName Nim Nama Alamat Tgl_lahir
DataType Text Text Text Date/Time
FieldSize 7 30 40
Status Primary Key
Simpan Tabel dengan nama : Mhs MEMBUAT KONEKSI DATABASE DENGAN ODBC 1. Buka Control Panel Administrativ Tools DataSource ODBC 2. Klik Tombol Add 3. Klik Microsoft Access Driver (*.mdb) Klik Tombol Finish 4. Pada Kotak Data Source Name, isi dengan nama source misalnya DBSQL 5. Klik Tombol Select 6. Kemudian cari dimana lokasi tempat penyimpanan Database anda pada kotak list Database Name pilih nama Database nya. Klik OK Klik OK Klik OK Sekarang ikuti untuk membuat contoh Aplikasi dengan menggunakan Query. 1. Buat Aplikasi baru, simpan nama Unit dengan Uquery dan Project dengan nama Pquery 2. Buat desain form berikut :
Query1
Query2 Memo1 dari Tab Standar
3. 4.
Ubah property name query1= Qactive dan name query2 = QDML Klik 2x tombol Active, buat code berikut (yang tidak bergaris bawah): procedure TForm2.Button1Click(Sender: TObject); begin
with qactive do begin sql.Clear; databasename:= 'DBSQL'; sql.Add('select * from mhs'); open; end; datasource1.DataSet:= qactive; dbgrid1.DataSource:= datasource1; end; end. 5.
Aktifkan komponen QDML, ubah property berikut : • DataBaseName : DBSQL • SQL klik tanda […] kemudian isi dengan sintak : Select * From Mhs Ok • Active : True
6.
Klik 2x Tombol Run, buat code berikut (yang tidak bergaris bawah): procedure TForm2.Button2Click(Sender: TObject); begin with qdml do begin close; sql.Clear; sql.Add(memo1.Lines.Text); execSql; end; end; end.
7.
Pilih Memo1, pada property Lines klik […] pada memo editor, Blok tulisan Memo1 tekan tombol delete 2x, sehingga tulisan Memo1 pada editor hilang dan Lines nya menjadi 0 Ok
8. 9. 10. 11.
Klik Tombol Save All Jalankan Aplikasi, bila tidak ada masalah masuk ke modus Run Klik Tombol Active Pada Kotak Memo tulislah perintah SQL berikut : Insert Into Mhs(nim,nama,alamat,tgl_lahir) Values(“001”,”Budi”,”Serang”,02/02/2008) Klik Tombol Run, bila tidak ada masalah Klik Tombol Active Perhatikan semua perubahan yang terjadi Selesai
12. 13. 14.
Query Berparameter Materi ini masih melanjutkan dari pembahasan Query Sekarang ikuti untuk membuat contoh Aplikasi dengan menggunakan Query. 1. Buat form baru (FileNewForm), simpan unit dengan nama : UParameter 2. Buat desain form berikut :
Query1 ubah property name : QActive
DateTimePicker dari Tab Win32
Query4 ubah property name : QDelete Query3 ubah property name : QUpdate Query2 ubah property name : QInsert
3. 4.
Ubah masing-masing property milik Qactive, Qinsert, Qupdate, dan Qdelete dengan mengikuti langkah no.5 bagian Query Klik 2x Tombol Active, isi dengan code yang tidak bergaris bawah : procedure TForm1.Button1Click(Sender: TObject); begin with qactive do begin sql.Clear; databasename:= 'DBSQL'; sql.Add('select * from mhs'); open; end; datasource1.DataSet:= qactive; dbgrid1.DataSource:= datasource1; end; end.
5.
Klik 2x Tombol Insert procedure TForm1.Button2Click(Sender: TObject); begin with qinsert do begin close; sql.Clear; {bentuk :nim, :nm, :alm, :tgl adalah bentuk parameter} sql.Add('insert into mhs(nim,nama,alamat,tgl_lahir)values(:nim,:nm,:alm,:tgl)'); {memanggil parameter} prepare; parambyname('nim').AsString:=edit1.Text; parambyname('nm').AsString:= edit2.Text; parambyname('alm').AsString:= edit3.Text; parambyname('tgl').AsDate:= datetimepicker1.Date; execSql; end; end; end.
6.
Klik 2x Tombol Update procedure TForm1.Button3Click(Sender: TObject); begin with qupdate do begin close; sql.Clear; sql.Add('update mhs set nama=:nm,alamat=:alm,tgl_lahir=:tgl'); sql.Add('where nim=:nim'); prepare; parambyname('nim').AsString:=edit1.Text; parambyname('nm').AsString:= edit2.Text; parambyname('alm').AsString:= edit3.Text; parambyname('tgl').AsDate:= datetimepicker1.Date; execSql; end; end; end.
7.
Klik 2x Tombol Delete procedure TForm1.Button4Click(Sender: TObject); begin with qdelete do begin close; sql.Clear;
sql.Add('delete from mhs'); sql.Add('where nim=:nim'); prepare; parambyname('nim').AsString:=edit1.Text; execSql; end; end; end. 8. 9. 10. 11. 12.
13. 14.
Klik Tombol Save All Jalankan Aplikasi Bila tidak ada masalah, tekan Tombol Active Lakukan untuk menambah data lewat tombol Insert, namun sebelumnya harus terisi data pada edit1 dan seterusnya tekan Tombol Active Lakukan untuk perubahan data lewat tombol Update, namun sebelumnya tentukan terlebih dahulu nim yang akan dirubah pada edit1, kemudian barulah isi pada nama, alamat, dan tanggal lahir tekan Tombol Active Lakukan untuk penghapusan data lewat tombol Delete, namun sebelumnya tentukan dahulu nim yang akan dihapus tekan Tombol Active Selesai.