ユーザーごとのデフォルトスキーム(セッションを変更しない)のOracle設定
質問
oracleユーザーのデフォルトスキーマを変更する方法はありますか?
セッションで変更できることがFAQで見つかりましたが、それは私が望んでいるものではありません。例えば。ログオン時のユーザーには常にデフォルトとして別のスキーマが表示されます。
事前に感謝します。
解決
ログオントリガーが機能するはずだと思います:
CREATE OR REPLACE TRIGGER db_logon
AFTER logon ON DATABASE WHEN (USER = 'A')
BEGIN
execute immediate 'ALTER SESSION SET CURRENT_SCHEMA = B';
END;
他のヒント
何らかの理由でトニーのトリガーが機能しませんでした。ただし、同じ概念を使用してWeb上で見つけたわずかに異なるトリガーはそうでした。
create or replace trigger set_default_schema
after logon on my_user.schema
begin
execute immediate 'alter session set current_schema=NEW_SCHEMA';
end;
他の誰かが同じ問題を抱えている場合に備えて、ただそこに放り出したかっただけです。
create or replace trigger AFTER_LOGON_TSFREL
AFTER LOGON ON "TSFRELEASEAPP".SCHEMA
BEGIN
EXECUTE IMMEDIATE 'ALTER SESSION SET current_schema=TSF_RELEASE';
END;
所属していません StackOverflow