我试图复制数据库用于测试/开发,在SQLDeveloper中我只能看到用户视图,我无法访问数据对象。
无论如何只复制视图并获得一个dll,为那些无法访问但在这些视图的sql查询中引用的数据对象创建某种幻像结构?问题是有超过一千个这样的引用,
在下面的示例中,由于权限太大,我无法访问标头对象, 例如:
CREATE OR REPLACE FORCE VIEW "TRADE"."EXCHANGE" ("MSGQUE", "MSGQUE2") AS
select msgque, msgque2
from head.msgqueues;
我尝试在SQL开发人员中导出视图,但是当我在Oracle测试数据库中导入视图时,视图包含错误并且无法使用,因为数据对象未在export.sql文件中导出,
提前致谢
答案 0 :(得分:1)
我建议使用expdp实用程序来执行此操作。您可以明确说要抓取视图和表格 parfile示例:
SCHEMAS=SCOTT
INCLUDE=TABLE:"IN ('DEPT')"
INCLUDE=VIEW
DIRECTORY=datapump
DUMPFILE=dept.dmp
LOGFILE=dept.log
然后你可以将parfile插入到你想要的数据库中,你将获得模式中的TABLE
和VIEW
。您可以修改IN
子句以获取所需的任何命名方案。