SQL Developerで次のスクリプト(F5)を実行します。
CREATE OR REPLACE FUNCTION "FOO"."BAR"
...
END BAR;
GRANT EXECUTE ON "FOO"."BAR" TO PUBLIC;
関数を作成しますが、関数に対して実際にGRANTを実行するのではなく、関数にGRANT行を埋め込みます(無効な状態になります)。
ただし、GRANTは、別のSQL Developerウィンドウ/セッションで実行された場合、期待どおりに機能します。
これは、SQL*Plusで実行した場合に期待どおりに機能します。
CREATE OR REPLACE FUNCTION "FOO"."BAR"
...
END BAR;
/
GRANT EXECUTE ON "FOO"."BAR" TO PUBLIC;
/
この構文はSQLDeveloperでは機能しません。
これらのコマンドをSQLDeveloperで正しく実行できるように組み合わせる方法はありますか?