插入遠端資料庫資料遇到分割槽表bug

sky_dizzy001發表於2014-02-01
在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部落格 ” ,連結:http://blog.itpub.net/29468144/viewspace-1076720/,如需轉載,請註明出處,否則將追究法律責任。

相關文章