하나의 어플리케이션에서 여러개의 쓰레드를 돌리면서 DB의 저장프로시져를 호출하고 있습니다.
저장프로시져 내부에서 @@ERROR을 이용해 에러 채크를 하는 부분이 있는데,
@@ERROR로 얻은 값이 자신의 쓰레드가 실행한 SQL문의 에러값이 아닌 다른 쓰레드의 에러값으로 바뀌는 경우가 있지 않을까 하는 생각이 듭니다.
근데 시스템 저장 프로시져들을 보니 그것들도 @@ERROR 사용에 대해 특별한 제약을 가하지 않더라구요...
여러개의 쓰레드를 통해 동시 접속하는 상황에서도 @@ERROR 사용이 안전한가요?
조언 부탁드립니다.
|