在 SQL Developer 中执行以下脚本 (F5):
CREATE OR REPLACE FUNCTION "FOO"."BAR"
...
END BAR;
GRANT EXECUTE ON "FOO"."BAR" TO PUBLIC;
将创建函数,但将 GRANT 行嵌入到函数中(导致其处于无效状态),而不是实际对函数执行 GRANT。
但是,如果在不同的 SQL Developer 窗口/会话中执行 GRANT,它将按预期工作。
如果在 SQL*Plus 中执行,这将按预期工作:
CREATE OR REPLACE FUNCTION "FOO"."BAR"
...
END BAR;
/
GRANT EXECUTE ON "FOO"."BAR" TO PUBLIC;
/
此语法在 SQL Developer 中不起作用。
有没有办法以可以在 SQL Developer 中正确执行的方式组合这些命令?