我已经创建了公共同义词在我大约在系统级创建视图的其他问题提出。话虽如此,我创建单独的公共同义词出来的观点,这样我就不必连接到单独的域了。我现在的问题是如何创建一个主一种公共同义词来捕获所有那些我刚才创建的同义词。到什么程度的“for”语句可以用来?

实施例: 在系统层面上,我将在其中创建MyView的每个域中运行查询: 创建或替换为domain1.myview公共同义词domain1_myview; 创建或替换为domain2.myview公共同义词domain2_myview; 创建或替换公共同义词domain3_myview为domain3.myview;

然后,我有上述3个公共同义词。

然后我试着写声明(出于绝望 - 不是专家)像下面希望只有一个Master_MYVIEW但失败: 创建或替换公共同义词MASTER_MYVIEW为(SELECT * FROM domain1_myview UNION ALL SELECT * FROM domain2_myview UNION ALL SELECT * FROM domain3_myview);

与上述的错误: “ORA-00995:丢失或无效同义词标识符”

希望有人能帮助我在此任务。有一个很好的:)一天。

有帮助吗?

解决方案

尝试创建一个名为MASTER_MYVIEW视图第一(您可能需要处理权限有作为):

create view master_myview as select ...;

然后创建该新的视图公共同义词:

create or replace public synonym master_myview for <owner>.master_myview;
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top