同意,
要在编写修改数据的语句前,加入adotable1.edit; 进入编辑模式.才行

解决方案 »

  1.   

    用代码改变数据表字段值时,先调用数据集的Edit方法。我们在窗体上使用数据绑定控件时,如果将DataSource组件的AutoEdit属性设置为False,则不能进行编辑。
      

  2.   

    在修改数据库数据前先进行状态判断
    if not (table1.state in [dsEdit,dsInsert]) then
    begin
       table1.edit ;
       或者 Table1.Insert ;
    end ;
    //赋值语句
      

  3.   

    同上意见,active属性已为true,并不意味着处在EDIT或是INSERT模式下,当数据源的AUTOEDIT属性为FALSE时,要进入这两种模式必须显示调用EDIT或INSERT。