ADOQuery的LockType
???????? 把控件DBGridEh的一列的checkbox設(shè)為true,將其綁定DataSourceA和DOQuery。用Button添加了一個事件,用來取消對checkbox的操作:ADOQuery.CancelBatch();可是只能取消最后一步的操作。檢查了很長時間才發(fā)現(xiàn)在DBGridEh的DataSource的Dataset 下的LockType的屬性設(shè)置問題,我設(shè)置成了:ItOptimistic??? 后來將此屬性改為:ltBatchOptimistic 就可以了
在網(wǎng)上查了一下,有如下說法:
1.ADOQuery.Update;ADOQuery.Delete;不用設(shè)置屬性.
2.locktype指定用戶打開數(shù)據(jù)集時對數(shù)據(jù)集的鎖定級別:
ltUnspecified 未指定鎖定級別
ltReadOnly Read-only??? 只讀
ltPessimistic 記錄級別(該記錄被編輯時其它用戶不能用)
ltOptimistic 獨立模式(與原來結(jié)果集對照,如果在此期間其它用戶修改了結(jié)果,則你的結(jié)果不能保存)
ltBatchOptimistic????? 批量模式(使用緩存,進行批量提交)
ADOQuery的屬性含義:
ltUnspecified????????? 不特別指定
ltReadOnly????????? 選出來的資料表只能讀,無法寫入
ltPessimistic???????? 選出來的資料表可以寫入,當(dāng)改記錄寫入時會立刻寫入并鎖定
ltOptimistic????????? 選出來的資料表可寫入,當(dāng)該記錄表寫入時不會立刻寫入但會鎖定,當(dāng)執(zhí)行updates時才正式寫入改記錄
ltBatchOptimistic????????? 選出來的資料表可寫入,當(dāng)該記錄寫入時不會立刻寫入但會鎖定,當(dāng)執(zhí)行updates才正式整批寫入該記錄(可以修改多條整批update)
總結(jié)
以上是生活随笔為你收集整理的ADOQuery的LockType的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 瑞士的迷人风光(转)
- 下一篇: oracle 任务定时执行