질문이 있습니다. 어떤 프로 시저 또는 함수를 동적으로 실행하기 위해 PLSQL 코드를 작성하고 있습니다. 메타 데이터 테이블을 사용하여이 방법으로 실행할 SQL 요소를 확인합니다.USING 절의 동적 매개 변수
V_COMMAND := 'BEGIN PROC_EX(:1,:2,:3,:4); END;';
을 그러나 문제는에서 나는 동적 인 방법을 사용 절에 바인드 변수를 필요로하기 때문에 명령이 즉시 실행이 적용됩니다 : 일부 코드
프로세스는 유사한 블록을 구축하는 정보를 복구합니다. String 변수를 생성하여 모든 매개 변수를 저장하려고 시도했지만 실행시 오라 오류 ORA-01008
가 발생했습니다. P_TABLE
, P_WHERE
, O_MESSAGE
및 O_CODE
코드를 시작으로 선언 된 변수입니다
V_PARAMS := 'IN P_TABLE, IN P_WHERE, OUT O_MESSAGE, OUT O_CODE';
:
내가 저장 PARAMS에 임시 VAR를 만들었습니다.그리고 명령이 방법으로 실행 : 가능 매핑 변수가 절을 사용의 동적 인 방법
EXECUTE IMMEDIATE V_COMMAND USING V_PARAMS;
인가를?
감사합니다, 나는 코드 스타일로 텍스트를 변경하지 방법을 알고하지 않습니다. – rbarbalho