VB6+ADO2.5在做事務處理時出錯,請教高手。

leotan_yang 2003-08-20 02:10:20
本人有以下的程序
Private Sub cmdConfirm_Click()
'''
Set adoCN = New ADODB.Connection
adoCN.ConnectionString = sysConnectionString
adoCN.IsolationLevel = adXactRepeatableRead
adoCN.CursorLocation = adUseServer
adoCN.Mode = adModeShareDenyWrite
adoCN.ConnectionTimeout = 10000
adoCN.Open

adoCN.BeginTrans
If invRS.RecordCount > 0 Then invRS.MoveFirst
Do While Not invRS.EOF
sSQL = "SELECT * FROM r013_t_hold_item WHERE (company_cd = '001') "

sSQL = "Update r013_t_hold_item Set r013_used_qty =100 WHERE (company_cd = '001') "
adoCN.Execute sSQL

invRS.MoveNext
Loop

  adoCN.CommitTrans

End Sub

請看以上的代碼,假設invRS記錄集有兩條記錄,當第一條記錄時,就能順利把《r013_t_hold_item 》表中的記錄select出來,然後也順利地update該記錄;當去到第二條記錄的時候,select出《r013_t_hold_item 》表中剛剛update的第一條記錄時就會出錯?請問這是什麼原因?事務處理不能select出update後,但沒有commitTrans的記錄嗎?在線等,急!!!!謝謝高手?
...全文
36 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧