2011-08-11 4 views
0

다음과 같은 오류 메시지가 있습니다.pl SQL 예외 메시지

2011-08-08 14:27:09 [E]: xxx - ORA-06502: PL/SQL: numeric or value error: 
character string buffer too small 
ORA-06512: at "xxx", line 1671 
ORA-06512: at "xxx", line 2083 
ORA-06512: at "xxx", line 921 
ORA-06512: at line 1 

줄이 많은 이유를 말해 줄 수 있습니까? 스택 되감기 또는 메시지가 인위적으로 결합 된 것입니까?

답변

2

실제로 풀어지고 있습니다.

아마도 Toad (줄 1)와 같은 데이터베이스 IDE에서 저장 프로 시저를 호출했을 것입니다. 이 프로 시저는 921 행의 프로 시저 호출을 가지며 ... 결국 1671 행의 프로 시저 또는 함수에서 오류가 발생합니다.

실수로 예외 처리기를 사용하면 멀티 - 라인 오류 메시지.

+0

리플렉션을 통해 C#에서와 같이 프로 시저 및 패키지 이름을 가져올 수 있습니까? – Revious

+0

무엇을 의미합니까, 스택 추적에서 프로 시저 이름을 가져 오거나 현재 프로 시저 이름을 가져 옵니까? 나는 "반영을 통한"이라는 용어가 어느 쪽에도 사용되지 않기 때문에 다소 혼란 스럽다. DBMS_UTILITY 패키지의 도움으로 현재 stacktrace 또는 예외 백 트레이스를 _string으로 가져올 수 있습니다. 따라서이 문자열을 구문 분석해야합니다. 그게 가능합니다. 나는 소프트웨어가 그것을 성공적으로하는 것을 보았다. – Codo

+0

예, 그런 식으로하고 싶습니다. 질문을 게시했습니다 : http://stackoverflow.com/questions/7032373/oracle-pl-sql-how-to-get-the-stack-trace-package-name-and-procedure-name – Revious