首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

麻烦各位大侠看看,这是什么情况,多谢

2012-03-21 
麻烦各位大侠看看,这是什么情况,谢谢!delphi运行后提示 ADOQuery1:Dataset not in edt or insert mode。我

麻烦各位大侠看看,这是什么情况,谢谢!
delphi运行后提示 ADOQuery1:Dataset not in edt or insert mode。
我是在一个窗体中添加了两个ADOQuery,一个用于和数据库连接,写入数据库;另一个是语句检查。


[解决办法]
修改或者新建数据前要ADOQuery.Edit或ADOQuery.Append
状态State是dsEdit,dsInsert、或者在赋值前,这个状态已经被其它的代码改变了

[解决办法]
你对数据集进行修改时,没有先修改一下状态,比如 adoquery.append或adoquery.edit,没有进行这些就
adoquery.fieldbyname('xxx').asstring := xxx 了
[解决办法]

探讨
delphi运行后提示 ADOQuery1:Dataset not in edt or insert mode。
我是在一个窗体中添加了两个ADOQuery,一个用于和数据库连接,写入数据库;另一个是语句检查。

[解决办法]
procedure TForm7.确定Click(Sender: TObject);
begin
if not VerifyAccount then
ShowMessage('输入有误,请重新输入!');
else begin
ADOQuery1.Append ;
ADOQuery1.FieldByName('原料').AsString :=trim(edit1.Text );
ADOQuery1.FieldByName('时间').AsString :=DateToStr(Now);
ADOQuery1.FieldByName('数量').AsString :=trim(edit2.Text );
ADOQuery1.FieldByName('记录员姓名').AsString :=trim(edit3.Text );
ADOQuery1.FieldByName('C1百分含量').AsString :=trim(edit4.Text );
ADOQuery1.Post ;
end;
end;
[解决办法]
if not VerifyAccount then
ShowMessage('输入有误,请重新输入!')//;这个分号忘了去掉
else begin

[解决办法]
探讨
procedure TForm7.确定Click(Sender: TObject);
begin
if not VerifyAccount then
ShowMessage('输入有误,请重新输入!');
else begin
ADOQuery1.Append ;
ADOQuery1.FieldByName('原料').AsString :=trim(edit1.Text );
AD……

[解决办法]
adoquery.fieldbyname('xxx').asstring := xxx 
这种方法也是可行的
支持一下

热点排行