我是用oralce8数据库,连接后。在程序中用的是adodc控件,与datagrid相连,为什么在修改了datagrid中数据后会自动提交到数据库中,如何设置取消自动提交?

解决方案 »

  1.   

    在datagrid的属性中有个allowupdate的属性,改为false就可以了
      

  2.   

    将这个属性allowupdate改为false后,连录入都不允许了,也就是说在datagrid中的行中任一单元格都不能录入数据。
      

  3.   

    lanhai96(蓝海):如何控制啊,请帮忙。
      

  4.   

    你用adodc控件绑定datagrid就不能实现时时控制,
    建议你用ado连接datagrid,
    那样就能实现你需要的功能
    给你段小例子
    你试试吧,好用的
    记得要引用adoDim WithEvents adoPrimaryRS As Recordset '数据库连接对象
    Private Sub Command1_Click()
       'strsql 是你的查询语句 你可以order by 排序的字段
       'strsql="select xh as 学号 from 表" 这里的学号就是你数据表中字段的标题
       strsql="select 字段 from 表"
       Set Db = New Connection
       Db.CursorLocation = adUseClient
       '下面的连接数据字符串你要修改一下
       Db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\计划管理系统.mdb;Persist Security Info=False"
       Set adoPrimaryRS = New Recordset
       adoPrimaryRS.Open strsql, Db, adOpenStatic, adLockOptimistic
       Set DataGrid1.DataSource = adoPrimaryRS
    end sub
      

  5.   

    adodc控件的 LockType 属性在打开记录集之前设置为 adLockBatchOptimistic。更新时:
    adodc1.Recordset.UpdateBatch如果取消:
    adodc1.Recordset.CancelBatch adAffectAll