F
freesoaring
Unregistered / Unconfirmed
GUEST, unregistred user!
通过adoquery查询获得一个记录集,并在dbgrid中显示了,现在想动态地修改该
dbgrid中某一字段值(如:年龄,有多个记录!),于是如下:
adoquery1.DataSource.DataSet.Edit;
adoquery1.DataSource.DataSet.first;
while not adoquery1.DataSource.DataSet.Eof do
begin
adoquery1.DataSource.DataSet.FieldByName('年龄').AsInteger:=20; //所有人年龄该为20
adoquery1.DataSource.DataSet.Next;
end;
结果运行到第一句就错了!说Access Violation在Address xxxxxxx
(控件的属性基本上用的都是默认值)
但如果用adodataset代替adoquery查询,并将以上代码中的
adoquery1.datasource.dataset用adodataset1代替就可以成功!
难道adoquery1真的不能实现以上功能吗????
dbgrid中某一字段值(如:年龄,有多个记录!),于是如下:
adoquery1.DataSource.DataSet.Edit;
adoquery1.DataSource.DataSet.first;
while not adoquery1.DataSource.DataSet.Eof do
begin
adoquery1.DataSource.DataSet.FieldByName('年龄').AsInteger:=20; //所有人年龄该为20
adoquery1.DataSource.DataSet.Next;
end;
结果运行到第一句就错了!说Access Violation在Address xxxxxxx
(控件的属性基本上用的都是默认值)
但如果用adodataset代替adoquery查询,并将以上代码中的
adoquery1.datasource.dataset用adodataset1代替就可以成功!
难道adoquery1真的不能实现以上功能吗????