在oracle 9208使用dblink插入一个分区表的分区的时候发现报错如下:
11:22:16 SQL> insert /*+ append parallel(T_SXYW 8) */ into T_SXYW partition(P244090000) select * from perfstat.T_SXYW_BAK@DB_LINK_ZSJJK_SXDB partition (P244090000) nologging;
insert /*+ append parallel(T_SXYW,8) */ into T_SXYW partition(P244090000) select * from perfstat.T_SXYW_BAK@DB_LINK_ZSJJK_SXDB partition (P244090000) nologging
ORA-14100: 分区扩展表名不能指远程对象
通过网上查找资料,确定这是oracle 一个bug(据说在10203修复了),oracle不能通过数据链进行partition相关操作,但是如果对同义词采用这种方式的查询,则oracle 没有进行相应的判断,而仅仅是忽略分区语句。因此适当的方式是在原库建立视图
解决方法:在原库的分区表建立每个分区的视图,然后通过视图的方式来插入数据
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29468144/viewspace-1076720/
,如需转载,请注明出处,否则将追究法律责任。