2011-03-25 4 views
1

사용자의 입력으로 테이블 이름을 PL/SQL 스크립트로 가져 와서 해당 테이블을 업데이트해야합니다. 오라클 스크립트를 구문 분석 문제가있을 수 있기 때문에 이것이 가능한지 확실하지 않습니다.SQL에서 테이블 이름을 입력으로 사용

이 문제를 해결하는 방법을 안내해주십시오.

Thnx.

답변

4

EXECUTE IMMEDIATE를 사용하십시오. SQL 문을 VARCHAR2 문자열로 작성한 다음 해당 문을 실행할 수 있습니다.

예 :

lStr := 'UPDATE '||table-name||' SET COLUMN-NAME = VALUE'; 

EXECUTE IMMEDIATE lStr; 

물론 COLUMN-NAME 및 VALUE도 물론 동적으로 변경할 수 있습니다. DBMS_ASSERT에서

http://download.oracle.com/docs/cd/B12037_01/appdev.101/b10807/13_elems017.htm

+1

봐는 전달되는 테이블 이름을 확인합니다. –

관련 문제