//利用combobox組件查詢數據庫表
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from '+trim(ComboBox2.Text));
ADOQuery1.Active:=true;
end;
//查詢記錄
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add('select * from YourTABLE where 查詢條件');
ADOQuery.Open;
//日期查詢
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from 全院收入表 where ks_name=:a and 費用類別=:b and 費用日期>=:d and 費用日期<=:e');
ADOQuery1.Parameters.ParamByName('a').Value:=trim(ComboBox1.Text);
ADOQuery1.Parameters.ParamByName('b').Value:=trim(ComboBox2.Text);
//ADOQuery1.Parameters.ParamByName('c').Value:=trim(ComboBox3.Text);
ADOQuery1.Parameters.ParamByName('d').Value:=datetostr(DateTimePicker1.Date);
ADOQuery1.Parameters.ParamByName('e').Value:=datetostr(DateTimePicker2.Date);
ADOQuery1.Active:=true;
//插入記錄
procedure TForm1.Button2Click(Sender: TObject);
begin
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Text:='insert into YourTABLE(字段1,字段2) values(:字段1,:字段2)';
// ADOQuery.SQL.Add('insert into YourTABLE values(:字段1)');
ADOQuery.Parameters.ParamByName('字段1').Value:=trim(Edit1.Text);
ADOQuery.Parameters.ParamByName('字段2').Value:=trim(Edit2.Text);
ADOQuery.ExecSQL;
end;
//刪除記錄
procedure TForm1.Button3Click(Sender: TObject);
begin
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Text:='Delete from YourTABLE where 字段3=:字段3';
//這里沒有添加where的條件判斷,實際使用時,注意添加判斷
// ADOQuery.SQL.Add('Delete from NEW_TABLE where 字段3=:字段3');
ADOQuery.Parameters.ParamByName('字段3').Value:=trim(Edit3.Text);
ADOQuery.ExecSQL;
//刪除記錄也可用DeleteRecords()函數
procedure DeleteRecords(AffectRecords: TAffectRecords = arAll);??
這個函數有一個參數:AffectRecords可以取如下的值:??
1、arCurrent :刪除當前記錄??
2、arFiltered :刪除符合Filter過濾后的所有記錄(如果你使用Filter過濾的話)??
3、arAll????????? :刪除所有記錄??
4、arAllChapters :Delete affects all chapters(ADO chapters)
//修改記錄
procedure TForm1.Button4Click(Sender: TObject);
begin
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Text:='Update YourTABLE SET 字段4=:字段4';
//這里沒有添加where的條件判斷,實際使用時,注意添加判斷
// ADOQuery.SQL.Add('Update YourTABLE SET 字段4=:字段4');
ADOQuery.Parameters.ParamByName('字段4').Value:=trim(Edit4.Text);
ADOQuery.ExecSQL;
//即時更新插入、刪除、修改后的記錄
在上面插入、刪除、修改的語句后添加如下代碼即可:
ADOQuery.Close;
ADOQuery.SQL.Add('select * from YourTABLE where 查詢條件');
ADOQuery.Open;
//使用ADOQuery時注意:
1、如果你需要更改數據,query.requestlive必須為true
2、如果有輸入參數的時候,容易出錯,通常的錯法是這樣:
比如:“WHERE abc = : abc”
改正如下:“WHERE abc=:abc”就是說=:前后都不能留空格。
3、ADOQuery.Open與ADOQuery.ExecSQL 有不同之處。
ADOQuery.Open一般用在查詢,select時候;而ADOQuery.ExecSQL用在insert,delete,update等。