2009-04-01 4 views
0

현재 iBatis와 nHibernate를 동일한 웹 사이트에서 사용하고 있습니다. A는 특정 페이지에 저장 수행하면 다음과 같은 오류가 발생하는 원인 :디버깅 .Net OracleClient 오류

System.Data.OracleClient.OracleException을 : ORA-01453를 : SET 트랜잭션

스택 추적이 마지막에 표시되는 거래의 첫 번째 문이어야합니다 이 질문의 이것은이 페이지에서만 발생합니다 (최소한 우리가 보았던 것 이상).

코드는 현재 활성 트랜잭션이 없음을 확인한 후 BeginTransaction을 호출하여 매우 기본입니다. 나는 이상하게 생각하고 아이디어를 찾고 있습니다. 1. 문제의 원인은 무엇입니까 2. 디버깅/문제 해결 방법 - (예 : System.Data.OracleClient를 통해 Oracle에 전송되는 명령을 스누핑하는 방법이 있습니까? ?)

도움 주셔서 감사합니다.

System.Data.OracleClient.OracleConnection.CheckError (OciErrorHandle errorHandle, INT32의 RC) 304,553 System.Data.OracleClient.OracleCommand.Execute (OciStatementHandle statementHandle, CommandBehavior를 동작 부울 needRowid, OciRowidDescriptor & rowidDescriptor, ArrayList를 & resultParameterOrdinals) System.Data.OracleClient.OracleCommand.ExecuteNonQueryInternal (부울 needRowid, OciRowidDescriptor & rowidDescriptor) 431 System.Data.OracleClient.OracleCommand.ExecuteNonQuery() +115 System.Data.OracleClient.OracleTransaction..ctor (990 OracleConnection 연결 , IsolationLevel isolationLevel) +377 System.Data.Oracl eClient.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

답변

0

자동 커밋을 해제해야합니다. 또한 일괄 적으로 보낼 수없는 문구 (예 : DDL)가 있습니다. 별도로 보내거나 execute_sql을 사용해야하는 문안이 있습니다.