C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 138 を表示中)
■81107 / )  CommitTransの不具合
□投稿者/ HK (1回)-(2016/08/30(Tue) 09:21:59)

分類:[VB.NET/VB2005 以降] 

VBの開発バージョン : Visual Basic 2010
アプリのエンドユーザーバージョン : Visual Basic 2010
mdbバージョン : Access2000

Dim ws As DAO.Workspace 'ワークスペース
Dim db As DAO.Database 'データベース
Dim rs As DAO.Recordset 'レコードセット
Dim rs2 As DAO.Recordset 'レコードセット

'DAOの設定
ws = DAODBEngine_definst.Workspaces(0)
db = ws.OpenDatabase(strMdbName)

ws.BeginTrans
は、エラーなく正常にトランザクションがかかっているにもかかわらず、
ws.CommitTransで
「Error #3034: コミットまたはロールバックを実行するには、BeginTrans メソッドを使用してください。」
エラーになることがあります。
この原因について教えていただけませんでしょうか?

この現象の再現性はなく、まれに発生します。

シーケンスとしては、
rsにレコード抽出結果を蓄える
ws.BeginTrans

rs.Edit()
rsのFieldの値を書き換え
rs.Update()

rs2にレコード抽出結果を蓄える
rs2のレコードを削除
rs2.Close()

他のテーブルにレコードを追加

ここまでは、エラーが発生することはありませんでした。

ws.CommitTrans
でエラーが発生します。

返信 編集キー/


管理者用

- Child Tree -