2010-07-26 2 views
0

java에 저장된 proc을 실행하려고합니다. 나는 데이터베이스에 연결해서 물건을해야한다는 것을 알고있다. ... 하지만 문제는 그 proc를 성공적으로 저장했는지 어떻게 알 수 있는가? 감사합니다. .storedproc가 성공적으로 실행되었는지 확인하는 방법

+3

"성공적으로"? "크래시하지 않았다"는 말은 한 가지입니다. "올바른 데이터에 올바른 일을하는"것을 의미한다면, 그것은 또 다른 문제입니다. 또한 상태보고는 데이터베이스마다 약간 씩 다릅니다. 어떤 데이터베이스를 사용하고 있습니까? "성공적으로"는 무엇을 의미합니까? –

+0

DB2를 사용 중입니다. 나는 "올바른 데이터에 올바른 일을 함"을 의미합니다. – user234194

+0

Oracle Db를 사용하고 있습니다. – Mike

답변

-1

예를 들어 프로 시저에서 숫자를 반환하는 것을 잊지 마십시오. 모든 것이 OK 일 때 0을 반환하고, 다른 연산이 실패하면 다른 숫자를 반환하고 사용하기로 결정한 오류 코드로 식별합니다. 1 - 삽입에 실패했습니다.

0

"올바른 데이터를 올바르게 처리합니다"라는 사실을 확인하고 싶다면 proc을 작성하는 동안 테스트해야 할 것이 있습니다.

저장된 proc은 사용자가 말한대로 처리 할 수 ​​있으며, 사용자가 "정말로"하고 싶은 것을 결정할 방법이 없습니다. 다른 이야기 인 오류를 감지하려고하는 경우

오류없이 실행되지만 "잘못된 데이터에 잘못된 것이"발생하는 시나리오를 설명 할 수 있습니까?

+0

혼란에 대해 유감스럽게 생각합니다. 저장된 proc (알맞은 일을한다고 가정)이 어떤 중단없이 성공적으로 실행되었는지 알고 싶습니다. – user234194

1

모든 것이 잘되면 0을 반환하는 OUT 매개 변수를 설정하지 않는 이유는 무엇입니까? 다른 입력 매개 변수가있는 p_return_codep_return_message이 있습니다.

proc 호출을하면 저장 프로 시저 내에서 0Success으로 설정하고 반환합니다. 삽입/업데이트/삭제 후 많은 데이터 유효성 검사를 수행하고 마지막으로 성공으로 설정합니다. 또한 예외를 처리하고 오류 메시지를 반환합니다.

관련 문제