下面的代码可以正常工作:
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来运行它。