現在、同じ Web サイトで iBatis と nHibernate を使用しています。特定のページで保存を実行すると、次のエラーがスローされます。
System.Data.OracleClient.OracleException: ORA-01453: SET TRANSACTION はトランザクションの最初のステートメントである必要があります
この質問の最後にスタック トレースが表示されます。これは、この 1 つのページでのみ発生します (少なくとも、これまでに確認したことはあります)。
コードは非常に基本的なもので、現在アクティブなトランザクションがないことを確認した後に BeginTransaction を呼び出します。私は困惑してアイデアを探しています: 1. 問題の原因と考えられるもの 2. デバッグ/トラブルシューティングの方法 - (たとえば、System.Data.OracleClient 経由で Oracle に送信されているコマンドをスヌープする方法はありますか?)
助けてくれてありがとう。
System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle、Int32 rc) +304553 System.Data.OracleClient.OracleCommand.Execute(OciStatementHandle statementHandle、CommandBehavior の動作、Boolean needRowid、OciRowidDescriptor& rowidDescriptor、ArrayList& resultParameterOrdinals) +990 System.Data.OracleClient .OracleCommand.ExecuteNonQueryInternal(Boolean needRowid, OciRowidDescriptor& rowidDescriptor) +431 System.Data.OracleClient.OracleCommand.ExecuteNonQuery() +115 System.Data.OracleClient.OracleTransaction..ctor(OracleConnection接続, IsolationLevel isolationLevel) +377 System.Data.OracleClient .OracleInternalConnection.BeginOracleTransaction(IsolationLevel il) +101 System.Data.OracleClient.OracleInternalConnection.BeginTransaction(IsolationLevel il) +4 System.Data.OracleClient.OracleConnection.BeginDbTransaction(IsolationLevel isolationLevel) +63 System.Data.Common.DbConnection.System.Data.IDbConnection.BeginTransaction(IsolationLevel isolationLevel) +10 NHibernate.Transaction.AdoTransaction.Begin(IsolationLevel isolationLevel) +176