最近、SQL Serverログにエラーが表示されています。
コード:3930説明:「現在のトランザクションはコミットできず、ログファイルに書き込む操作をサポートできません。トランザクションをロールバックしてください。」
SQLプロファイラーを使用して、このエラーの原因となっている正確なステートメントを見つけるにはどうすればよいですか? SQLプロファイラのどの列がSQLエラーログの「メッセージ」列を埋めますか?残念ながら、これは本番環境でのみ取得しているため、可能な限り最軽量のトレースでトレースを実行する必要があります。問題のあるコードをキャプチャするために何を勧めますか?
プロファイラーで[すべてのイベントを表示]をクリックし、エラーと警告のリストに移動します。例外とユーザーエラーメッセージを確認できるはずです。 Exceptionクラスは実際のエラーを表示し、User Error Messageは表示されたメッセージを表示します(たとえば、「...の近くに不正な構文」など)。
エラーログに記録されるメッセージについて言及します。エラーメッセージカテゴリにはErrorLogイベントもあるので、これも含めても問題ありません。
そのときにコマンドが実行されるようにするには、SQL:BatchStartingと、場合によってはSQL:BatchCompletedも含める必要があります。
Remus Rusanuの この種の以前の質問への回答 を見て、問題の解決に役立つかどうかを確認することもできます。