レガシーVB6アプリケーションをSybaseバックエンドからSQL Server 2008 R2に移行中です。ほとんどのアプリケーションが移行を進めていますが、名前付きトランザクションを使用してコード内から厳密なトランザクション制御を使用する1つのアプリケーションがあります。いくつかの徹底的なテストに基づいて、クライアントまたはサーバーは、「開始」、「コミット」、および「ロールバック」コマンドをまったくサポートしていないように見えます。レガシーVB6アプリケーション用のADODBでのトランザクションのサポート
このようなコマンドの実行:
conSQL.Execute "begin tran CaptureSch" ', , adExecuteNoRecords
をしてから@@ TRANCOUNTとそれに続くことは常にトランザクションをコミットするのいずれかの試みが、後のコードで3902エラーが発生しさらに0を生成します。このコマンドを使用
:
conSQL.BeginTrans
しかし@@ TRANCOUNTはまだゼロであり、このメソッドはにより必要とされるものである、ネストされたトランザクションをサポートしていないだろう、行動変化のいくつかの並べ替えを得るために表示されていますコード。
暗黙的なトランザクションモード、さまざまな接続文字列パラメータなどを変更しようとしました。このタイプの機能をどのように動作させるかについての提案はありますか?オンラインで見つけられるこの種の機能のサンプルは、コード内で明示的に実行されるとネストされた名前付きトランザクションがサポートされることを示唆しています。
ありがとうございました。あなたはすでにこれを発見していない念の