先在有个问题
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids;type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
adoconnection1.Close;
adoconnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\jdl1\My Documents\教学管理系统\教学管理系统\教务课程管理系统\教务课程管理系统\db1.mdb;Persist Security Info=False';
adoquery1.SQL.Clear;
adoquery1.Connection:=adoconnection1;
adoquery1.SQL.Add('select * from class');
adoquery1.Open;
datasource1.DataSet:=adoquery1;
dbgrid1.DataSource:=datasource1;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
adoquery1.SQL.Clear;
adoquery1.Connection:=adoconnection1;
adoquery1.SQL.Add('insert into class(id,name,monitor,department) values('+edit3.Text+','+'"'+edit1.Text +'"'+','+edit2.Text +','+edit4.Text +')');
adoquery1.Open ;
end;
end.
因为我才学了5天不懂请见量,这段是我吓写的,先在有个问题,他好象有警告,
警告是:‘对象和提供者不能执行所需要的操作’。请问着是不是跟我用的是TADOQUERY 有关,有什么解决办法吗?因为我以前是学VB的,所以我用VB的办法做的。
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids;type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Button1: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
adoconnection1.Close;
adoconnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\jdl1\My Documents\教学管理系统\教学管理系统\教务课程管理系统\教务课程管理系统\db1.mdb;Persist Security Info=False';
adoquery1.SQL.Clear;
adoquery1.Connection:=adoconnection1;
adoquery1.SQL.Add('select * from class');
adoquery1.Open;
datasource1.DataSet:=adoquery1;
dbgrid1.DataSource:=datasource1;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
adoquery1.SQL.Clear;
adoquery1.Connection:=adoconnection1;
adoquery1.SQL.Add('insert into class(id,name,monitor,department) values('+edit3.Text+','+'"'+edit1.Text +'"'+','+edit2.Text +','+edit4.Text +')');
adoquery1.Open ;
end;
end.
因为我才学了5天不懂请见量,这段是我吓写的,先在有个问题,他好象有警告,
警告是:‘对象和提供者不能执行所需要的操作’。请问着是不是跟我用的是TADOQUERY 有关,有什么解决办法吗?因为我以前是学VB的,所以我用VB的办法做的。
解决方案 »
- 如何屏蔽图片中某一区域
- 年终总结(一):DirectShow做的播放器(有部分代码)
- DELPHI中如何进行两点之间的连接
- 在toolbar上放置bitbtn问题
- 怎样使用DELPHI从ORACLE数据库中存取图片(JPG和BMP格式的)
- 我在修改dataSet是老是提示:readonly dataset??!!!!
- 如何实现鼠标拖动桌面快捷方式到本软件窗体时,程序获取拖动快捷方式对应的文件路径
- 积分制的弊端!造成CSDN今天这样萧条的原因!欢迎大家来讨论!
- 怎么用Qreport?我都急死了(100分)
- 在Delphi下设计程序怎样做成象CSDN"专家门诊"这样的框架格局?
- 又要问下蛋疼的多线程问题了
- 继续散分,恭贺新年!
procedure TForm1.Button1Click(Sender: TObject);
begin
adoquery1.SQL.Clear;
adoquery1.Connection:=adoconnection1;
adoquery1.SQL.Add('insert into class(id,name,monitor,department) values('+edit3.Text+','+'"'+edit1.Text +'"'+','+edit2.Text +','+edit4.Text +')');
adoquery1.ExecSQL ;
end;
begin
adoquery1.close;
adoquery2.Connection:=adoconnection1;
adoquery2.close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('insert into class(id,name,monitor,department) values('+edit3.Text+','+''''+edit1.Text +''''+','+edit2.Text +','+edit4.Text +')');
adoquery2.ExecSQL;
adoquery1.Open;
end;
insert ______ADOQuery.ExecSQL;
begin
adoquery1.close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('insert into class(id,name,monitor,department) values('+edit3.Text+','+''''+edit1.Text +''''+','+edit2.Text +','+edit4.Text +')');
adoquery2.ExecSQL;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
adoquery1.close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('insert into class(id,name,monitor,department) values('+edit3.Text+','+''''+edit1.Text +''''+','+edit2.Text +','+edit4.Text +')');
adoquery1.ExecSQL;
end;
设置ADOConnection的连接属性的正常方法是双击ADOConnection,打开可视对话框,用向导的方式进行设置。
adoquery1.SQL.Add('insert into class(id,name,monitor,department)
values('+quotedstr(edit3.Text)+','+quotedstr(edit1.Text) +','+quotedstr(edit2.Text) +','+quotedstr(edit4.Text) +')');
并且在重现,是什么属性???
谢谢
并且在重现,是什么属性???
谢谢
告诉我,我在开一贴加分
(1)datasource1.DataSet:=adoquery1;
(2)最后adoquery1.SQL.Add('insert ......'),不是 Select 语句
所以网格表会消失;* 建议做'insert ......'用adoquery2
* adoquery2 做完 insert 后执行下面语句:
;adoquery1.close;
adoquery1.open; //end。