远程表中的Oracle物化视图

远程表中的Oracle物化视图,oracle,oracle11g,materialized-views,Oracle,Oracle11g,Materialized Views,我希望在Oracle 11g数据库中有一个具体化视图,该数据库使用到9i数据库的数据库链接 我已经为许多表完成了这项工作,并且很好地解决了ADO.NET驱动程序的兼容性问题,特别是针对EF6的最新驱动程序 问题是您不能拥有包含长列的物化视图。 您不能通过db链接在远程表上使用to_lob将LONG转换为CLOB 是否有任何解决方案可以从包含长视图的远程表创建实体化视图 这就是我希望能够做到的 CREATE MATERIALIZED VIEW MV_WITH_CLOB REFRESH FAST

我希望在Oracle 11g数据库中有一个具体化视图,该数据库使用到9i数据库的数据库链接

我已经为许多表完成了这项工作,并且很好地解决了ADO.NET驱动程序的兼容性问题,特别是针对EF6的最新驱动程序

问题是您不能拥有包含长列的物化视图。 您不能通过db链接在远程表上使用to_lob将LONG转换为CLOB

是否有任何解决方案可以从包含长视图的远程表创建实体化视图

这就是我希望能够做到的

CREATE MATERIALIZED VIEW  MV_WITH_CLOB
REFRESH FAST WITH PRIMARY KEY 
START WITH SYSDATE NEXT SYSDATE+(5/1440) /* 5 MINUTES */ 
FOR UPDATE AS 
SELECT COL1, TO_LOB(MYLONGCOL) FROM TABLE_WITH_LONG@SOURCE_DB;

提前感谢

我希望这是一个遗留表。LONG已被弃用…很久了。。。时间,不应该再使用了。您应该创建LOB类型为CLOB或NCLOB的列。这是旧Oracle 9i数据库中的一个古老表。在硬件刷新之前,我仍然需要连接到它。你对如何工作有什么想法吗?我正在考虑在旧db上创建视图,将long转换为varchar2,唯一的问题是long值超过了length。据我所知,使用clob从远程查看mv无法正常工作。您是否可以不在本地数据库上暂存数据?插入stg_tbl LOB_COL中,从旧列表中选择LOBLONG_COL_db@remote_tbl;您不能在db链接中使用lob或lob定位器。我正在考虑两种选择,使用varchar表示long的虚拟col或完全丢失long。感谢您的输入,这可能是9i的限制。可能性呢?在长屏幕上创建视图?