|
■No52450 (すなふきぬ さん) に返信
> 以前から不具合はあったみたいですね。 > ソース見ていないので何とも言えませんが、テーブルB、Cのデッドロックとかの可能性はないですか? > あと、B,Cの存在判定はテーブルの有無だけで判断されてそうですが、ストアドのトランザクション側でロック処理はされていますか? > ACCESS側でエラー処理(On Error GoToとか)をされていますか?
On Error の記述はしていますがエラーとして返ってくるのは「ODBC 呼び出しが失敗しました」のみでした。 そういう仕様(?)みたいですね。
今週早々にODBCのドライバを"SQL Server"から"SQL Native Client"に変えてみましたが昨日また同じエラーが発生してしまいました。 ただ今回は DBEngine.Errors から詳細なエラー情報を得ることができました。 結果を申しますと テーブルBにもCにも関係なく、まったく別のテーブル(ログテーブル)のInsert時のキー重複エラーが原因でした。 ※印刷処理時にレポートのロジックでログの書込み処理があったのを見落としていました。
原因が判明しましたのでプログラム修正を行い、様子を見てみようと思います。ありがとうございました。
|