这样写到增加那里就不会了。
附代码unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, DB, ADODB, Grids, DBGrids, StdCtrls;type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBNavigator1: TDBNavigator;
Label1: TLabel;
Button1: TButton;
Edit1: TEdit;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
Sql1:String;
begin
Sql1:='select * from CUSTOMER where CustNo ='+Edit1.Text;
adoquery1.Close; //关闭ADOQuery1,以便于进行SQL语句更新
adoquery1.SQL.Clear; //清空SQL语句
adoquery1.SQL.Add(Sql1); //添加新的SQL
adoquery1.Open; //新SQL有效
end;procedure TForm1.Button2Click(Sender: TObject);
var
Sql1:String;
begin
Sql1:='insert into CUSTOMER values '+Edit1.Text;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(Sql1);
adoquery1.Open;
end;end.
我要实现那几个按钮的功能
附代码unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, DB, ADODB, Grids, DBGrids, StdCtrls;type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBNavigator1: TDBNavigator;
Label1: TLabel;
Button1: TButton;
Edit1: TEdit;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
Sql1:String;
begin
Sql1:='select * from CUSTOMER where CustNo ='+Edit1.Text;
adoquery1.Close; //关闭ADOQuery1,以便于进行SQL语句更新
adoquery1.SQL.Clear; //清空SQL语句
adoquery1.SQL.Add(Sql1); //添加新的SQL
adoquery1.Open; //新SQL有效
end;procedure TForm1.Button2Click(Sender: TObject);
var
Sql1:String;
begin
Sql1:='insert into CUSTOMER values '+Edit1.Text;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(Sql1);
adoquery1.Open;
end;end.
我要实现那几个按钮的功能
Post提交Cancel取消
找点基础的书看看
增加 ADOQuery.Insert 或者 ADOQuery.Append
撤销 ADOQuery.CancelUpdates
提交保存 ADOQuery.UpdateBatch()
增加 ADOQuery.Insert 或者 ADOQuery.Append
撤销 ADOQuery.CancelUpdates
提交保存 ADOQuery.Post或者ADOQuery.UpdateBatch()
编辑 ADOQuery.Edit
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, DB, ADODB, Grids, DBGrids, StdCtrls;type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBNavigator1: TDBNavigator;
Label1: TLabel;
Button1: TButton;
Edit1: TEdit;
Button2: TButton;
Button3: TButton;
Button5: TButton;
Button6: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
Sql1:String;
begin
Sql1:='select * from CUSTOMER where CustNo ='+Edit1.Text;
adoquery1.Close; //关闭ADOQuery1,以便于进行SQL语句更新
adoquery1.SQL.Clear; //清空SQL语句
adoquery1.SQL.Add(Sql1); //添加新的SQL
adoquery1.Open; //新SQL有效
end;procedure TForm1.Button2Click(Sender: TObject);
var
Sql1:String;
begin
Sql1:='insert into CUSTOMER values '+Edit1.Text;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(Sql1);
adoquery1.Open;
end;procedure TForm1.Button6Click(Sender: TObject);
begin
close;
end;procedure TForm1.Button3Click(Sender: TObject);
var
Sql1:String;
Sql2:String;
begin
if edit1.Text<> '' then
begin
Sql1:='delete from CUSTOMER '+'where CustNo='''+edit1.Text+'''';
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(Sql1);
adoquery1.ExecSQL;
Sql2:='select * from CUSTOMER';
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(Sql2);
adoquery1.Open;
end
else
begin
showmessage('请输入数字!')
end;
end;end.删除我写好了,,,,还差两个了 。自己研究好累啊
var
Sql1:String;
begin
with adoquery1 do
begin
Append;
parambyname('CustNo').AsString := Edit1.text;
post;
end;
end;procedure TForm1.Button2Click(Sender: TObject);//删除
var
Sql1:String;
begin
adoquery1.Delete;
end;procedure TForm1.Button2Click(Sender: TObject);//修改
var
Sql1:String;
begin
with adoquery1 do
begin
Edit;
parambyname('CustNo').AsString := Edit1.text;
post;
end;
end;
insert: adoquery1.append or adoquery1.insert;
post or update : adoquery1.post or adoquery1.updatebatch(arall);
edit: adoquery1.edit...
1.當你只是查詢數據時,請用adoquery1.Open;
2.需要操作數據(如新增、刪除、修改時)請用adoquery1.execsql;
var
Sql1:String;
begin
Sql1:='insert into CUSTOMER values ('+Edit1.Text+')';
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(Sql1);
adoquery1.ExecSQL; //不是用open
end;end.
//查询记录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等。
我刚开始弄的时候也是弄到想哭
现在终于弄出点头绪了
强烈建议楼主去
http://topic.csdn.net/u/20100801/14/951590a3-7297-4a82-ae5f-a992178d369b.html
看看
ADO控件基本的说明
很全的