从数据集修改保存数据
我用一个ADODataset连接数据库,返回多条记录,再用一个DataSourse连接一个DBGrid、DataSourse的Dataset设置为ADODataset.
问题如下:
当我在DBGrid中修改某一条数据时候,如果指针移动到下一条,会自动保存上一条到数据库。
但是为什么。我先设置ADODataset.edit,在DBGrid中编辑数据后,再ADODataset.post,会提示键列信息不足,无法保存空记录!
[解决办法]
因为和数据库字段没统一呗
[解决办法]
在修改字段值之前,先用local定位记录。
大致代码如下:
ADOQuery_out.Edit;
ADOQuery_out.local('主键名称',主键值);//定位到要修改的记录。一般用主键来检索。
ADOQuery_out.FieldByName('Xfield').Value:=edit7.Text;//修改某列的值。字段名称假设为lastfield。
ADOQuery_out.post;
[解决办法]
某些必须要赋值的字段没赋值