触发器即使存在也看不到其他架构

时间:2018-09-19 15:37:15

标签: sql oracle

我试图创建触发器,以便当我们以应用程序用户身份登录时,不需要为表指定架构前缀。但是我正在为错误而苦苦挣扎。触发器如下所示:

CREATE OR REPLACE TRIGGER db_schema.db_logon_app
AFTER LOGON ON app_schema.schema
BEGIN
  EXECUTE IMMEDIATE 'ALTER SESSION SET current_schema = DB_SCHEMA';
END;

当我尝试执行它时,出现以下错误:

  

错误报告:   ORA-00942:表或视图不存在   00942. 00000-“表或视图不存在”   *原因:
  *动作:

如何处理?这两种模式都存在,并且DB_SCHEMA拥有ALTER SESSION特权。

当我尝试创建此类触发器时,只是为了检查它是否工作正常:

CREATE OR REPLACE TRIGGER db_schema.db_logon_app
AFTER LOGON ON db_schema.schema
BEGIN
  EXECUTE IMMEDIATE 'ALTER SESSION SET current_schema = DB_SCHEMA';
END;

0 个答案:

没有答案