请看下面代码:
//窗体建立时的代码
form.query.close;
form.query.sql.clear;
form.query.sql('select * from  数据库');
form.query.open;
//修改按钮(1条记录只能执行一次)
form.query.edit;
//保存按钮
form.query.fieldbyname('字段名').asstring:='55'
form.query.fieldbyname('字段名').asstring:='55'
form.query.post;
为什么1条记录只能修改1次,第二次就弹出这条记录正在被其others修改,不能执行修改操作。

解决方案 »

  1.   

    //窗体建立时的代码
    form.query.close;
    form.query.sql.clear;
    form.query.sql('select * from  数据库');
    form.query.open;
    //注意
    query.first;  //指向数据库第一条记录
    //修改按钮(1条记录只能执行一次)
    form.query.edit;
    //保存按钮
    form.query.fieldbyname('字段名').asstring:='55'
    form.query.fieldbyname('字段名').asstring:='55'
    form.query.post;
    //注意
    if not query.eof then
    query.next;//指向下一条记录
      

  2.   

    每次修改提交后,系统自动将指针指向第一条数据,
    并且数据库的写锁被占用,所以报那样的ERROR.
    你最好是用SQL语句去修改数据。