无法通过EXECUTE IMMEDIATE运行CTX_DDL.CREATE_STOPLIST

时间:2018-10-03 15:55:38

标签: oracle plsql execute-immediate

下面的代码可以正常工作:

BEGIN
    CTX_DDL.CREATE_STOPLIST('MY_STOPLIST', 'BASIC_STOPLIST');
END;
/

但是,当尝试通过EXECUTE IMMEDIATE立即运行时:

BEGIN
    EXECUTE IMMEDIATE 'CTX_DDL.CREATE_STOPLIST(''MY_STOPLIST'', ''BASIC_STOPLIST'');';
END;
/

我得到了错误

ORA-00900: invalid SQL statement
ORA-06512: at line 2
00900. 00000 -  "invalid SQL statement"
*Cause:    
*Action:

已修复(感谢@William Robertson):

BEGIN
    EXECUTE IMMEDIATE 'BEGIN CTX_DDL.CREATE_STOPLIST(''MY_STOPLIST'', ''BASIC_STOPLIST''); END;';
END;
/

注意:我真的需要使用EXECUTE IMMEDIATE来运行它。

0 个答案:

没有答案