より特権的なアカウントのスキーマ内で、通常のユーザーに対してスクリプトを機能させる必要があります。それを達成するために set current_schema を使用しています。ただし、スキーマを変更すると、パブリック シノニムが機能しないことがわかりました。修飾しない限り、3 番目の異なるスキーマのテーブルにアクセスできません。
>select count(*) from my_table;
COUNT(*)
----------
79982
>alter session set current_schema = admin_account;
Session altered.
>select count(*) from my_table;
select count(*) from my_table
*
ERROR at line 1:
ORA-00942: table or view does not exist
>select count(*) from other_account.my_table;
COUNT(*)
----------
79982
シノニムを再び機能させる方法はありますか?