Oracle Apex를 사용하고 있으며 plsql 본문에서 SQL 반환을 기반으로 보고서를 작성하고 있습니다.
내 진술은 다음과 같습니다.
DECLARE
l_query varchar2(1000);
BEGIN
l_query := 'SELECT ' || :P10_MYVAR || ' from dual ';
return l_query;
END;
다음과 같은 오류 메시지가 나타납니다.
ORA-20999: Parsing returned query results in "ORA-20999: Failed to parse SQL query! <p>ORA-06550: line 3, column 25: ORA-00936: missing expression</p>".
바인드 변수없이 시도하면 잘 컴파일됩니다.
DECLARE
l_query varchar2(1000);
BEGIN
l_query := 'SELECT sysdate from dual ';
return l_query;
END;
이 오류가 발생하는 이유를 알 수 없습니다. 데이터베이스에서 직접 명령을 실행하는 경우 :
SELECT :P10_MYVAR from dual
이것은 잘 실행됩니다. 이 오류가 발생하는 이유는 무엇입니까?
아마도 당신은 다음을 의미했을 것입니다.
DECLARE
l_query varchar2(1000);
BEGIN
l_query := 'SELECT :P10_MYVAR from dual';
return l_query;
END;
즉 , 문자열과 연결되지 않고 쿼리 내부 의 매개 변수 이름을 원합니다 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다