//查詢記錄
procedure
TForm1
.
Button1Click(Sender: TObject);
begin
ADOQuery
.
Close;
ADOQuery
.
SQL
.
Clear;
ADOQuery
.
SQL
.
Add(
'select * from YourTABLE where 查詢條件'
);
ADOQuery
.
Open;
//插入記錄
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等。