我使用adodc和datagrid,我使用如下的语句:
adodc.recordset("zz") =1
adodc.recordset.update
执行成功.
但我只使用:
adodc.recordset("zz") =1
执行也能成功,也能更新数据库.
我的意思是能不能屏蔽掉recordset的自动更新的属性,只有我使用了adodc.recordset.update 后在recordset上的数据才能更新在数据库上 
如果不能屏蔽的话,我想RECORDSET的UPDATE就不用要了,微软的这个update的设置就没有意思

解决方案 »

  1.   

    这与你打开recordset的方式有关
      

  2.   

    rs.Open strSQL, cn, adOpenStatic, adLockBatchOptimistic
    adLockBatchOptimistic参数表示批处理,在移动记录时不会自动更新数据库,只有在使用Update方法后才能更新数据库.
      

  3.   

    我没有使用编程的方式
    我使用了adodc控件,这个属性该如何设置呢?
      

  4.   

    在属性
    locktype选4-adlockbathoptimistic
      

  5.   

    我把adodc的locktype设置为4,可是我在和他绑定的datagrid上操作数据时,为什么我不执行updatebatch,还是能更改数据库中的表呢?
      

  6.   

    当然会更新表,因为Adodc这个控件把什么都做了。如果要自己写,可以用adodb对象来连接。