을 실행에 내가ORA-6502 문자열 버퍼가 너무 작은 오류 즉시 문
EXECUTE IMMEDIATE 'BEGIN :project_id :=
Activity_API.Get_Project_Id(:activity_seq); END;'
USING OUT project_id_, activity_seq_
project_id_
아래의 문에서 내 코드에서 Oracle 오류 ORA-6502 Character string buffer too small
를 얻을 수 -이 기능
activity_seq_
에서 지역 변수입니다 - - 이것은 함수에 대한 IN 매개 변수입니다.
나는 오류의 원인을 이해하지 못한다. 게다가 오류가 지속적으로 나타나지 않습니다.
내가 무엇을 놓치고 있는지 알려주세요. 감사합니다. .
일부 'VARCHAR' 변수는 정의 된 크기보다 긴 문자열로 할당되었습니다. 데이터에만 의존합니다. –
전체 오류 스택은 무엇입니까? 해당 할당 또는 호출중인 함수 내에서 발생한 오류입니까? 당신의 함수에서'project_id_'라고 선언 된 크기는 얼마입니까? 함수가 반환 할 수있는 최대 값 길이는 얼마입니까? –
project_id_ 변수의 크기를 확인했습니다. 여기에있는 Get_Project_ID 함수에서 반환 한 것과 같습니다. 게다가 Get_Project_id 함수 내에서도 크기 문제는 없습니다. 게다가, 즉시 실행 즉시 호출되는이 바로부터 외부 함수 내에서 오류가 발생합니다. 내가 말했듯이 오류는 일관성이 없으므로 오류의 실제 원인을 이해하는 것을 훨씬 어렵게 만듭니다. – user4507518