-1
TRY CATCH
으로 저장 프로 시저를 만들었습니다. CATCH
섹션에서 테이블 Error_Details
에 오류를 저장하기 위해 다른 저장 프로 시저를 실행하고 있습니다.ROLLBACK에서 COMMIT SQL TRANSACTION
이제 C#에서 DbTransaction
을 사용하여 오류에 따라 커밋하고 롤백 할 수 있습니다.
문제는 롤백이 테이블 Error_Details
도 롤백되는 동안 발생합니다.
모든 항목을 롤백해야하지만 Error_Details
테이블이 아닌 옵션이 있습니까?
접근 방식은 C# 측 또는 db 측에서 트랜잭션 처리 중 하나 여야하며 둘을 섞어서는 안됩니다. C# 측에서 DbTransaction을 원하면 sp에서 try catch를 제거하고 C# 측과 별도의 호출로 오류 로깅을 실행하십시오. 또는 SP에서 전체 트랜잭션 처리를 수행하고 C# 측의 DbTransaction을 제거하십시오. – ArunGeorge