ADODB.Recordset 錯誤 800a0cb3 的解決辦法
[重要通告]如您遇疑難雜癥,本站支持知識付費(fèi)業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時間哦!
在數(shù)據(jù)庫里添加新記錄的時候無法添加,提示錯誤如下:
ADODB.Recordset 錯誤 '800a0cb3'
當(dāng)前記錄集不支持更新。這可能是提供程序的限制,也可能是選定鎖定類型的限制。
查看了代碼:
把: rs.Open sql,conn,1,1
改: rs.Open sql,conn,1,3
就可以了 呵呵~
關(guān)于1,1與1,3的區(qū)別請看:rs.open sql,conn,1,1全接觸
鑒于前文ADODB.Recordset 錯誤 '800a0cb3' 的解決辦法
我收集補(bǔ)充了一個小知識:rs.open sql,conn,1,1全接觸
在連接DB的時候用到,就該知道代表什么意思了
RS.OPEN SQL,CONN,A,B
A:
ADOPENFORWARDONLY(=0)
只讀,且當(dāng)前數(shù)據(jù)記錄只能向下移動
ADOPENKEYSET(=1)
只讀,當(dāng)前數(shù)據(jù)記錄可自由移動
ADOPENDYNAMIC(=2)
可讀寫,當(dāng)前數(shù)據(jù)記錄可自由移動
ADOPENSTATIC(=3)
可讀寫,當(dāng)前數(shù)據(jù)記錄可自由移動,可看到新增記錄
B:
ADLOCKREADONLY(=1)
缺省鎖定類型,記錄集是只讀的,不能修改記錄
ADLOCKPESSIMISTIC(=2)
悲觀鎖定,當(dāng)修改記錄時,數(shù)據(jù)提供者將嘗試鎖定記錄以確保成功地編輯記錄。只要編輯一開始,則立即鎖住記錄。
ADLOCKOPTIMISTIC(=3)
樂觀鎖定 ,直到用Update方法提交更新記錄時才鎖定記錄。
ADLOCKBATCHOPTIMISTIC(=4)
批量樂觀鎖定,允許修改多個記錄,只有調(diào)用UpdateBatch方法后才鎖定記錄。
當(dāng)不需要改動任何記錄時,應(yīng)該使用只讀的記錄集,這樣提供者不用做任何檢測。
對于一般的使用,樂觀的鎖定可能是最好的選擇,因?yàn)橛涗浿槐绘i定一小段時間,
數(shù)據(jù)在這段時間被更新。這減少了資源的使用。
問題未解決?付費(fèi)解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當(dāng)無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!