exchange partition 交換的問題ORA-14130:

zhouxianwang發表於2012-07-19
我今天也遇到了個問題:
  我有一個大的分割槽表,有一個欄位調整,
 步驟:
  1.建立普通表p2010--2014(表結構與分割槽表,相同)
  2.用exchange partition 交換分割槽表與普通表:  SQL> alter table barcode_master  exchange partition P2010  with table p2010; 。。。。。
  3.重建分割槽表(同進建立index和primary key ),修改普通表的欄位
  4.用exchange partition 交換分割槽表與普通表(在這步出錯,下面錯識)



SQL> alter table barcode_master  exchange partition P2010  with table p2010;
alter table barcode_master  exchange partition P2010  with table p2010
*
ERROR at line 1:
ORA-14130: UNIQUE constraints mismatch in ALTER TABLE EXCHANGE PARTITION

檢視發現:
  分割槽表有INDEX 和PRIMARY KEY  ,p2010(普通表)沒有

  把分割槽別的 INDEX 和PRIMARY KEY  刪了就可以了
  交換完了,再加INDEX和 Primary key ,但這個時間比較長
  我這 barcode_master 表比較大,2億多條資料,重建index和primary key 比較麻煩關且比較耗時。


  
 別一個方案(理論的不知怎麼來做):
   就是在p2010(普通表) 在加 INDEX 和PRIMARY KEY  不知各位大俠沒有這方面的經驗? 
    我測試時說INDEX名同名,如果INDEX名不同不知行不行 ? 這個方案是否可行 ??

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27036311/viewspace-735989/,如需轉載,請註明出處,否則將追究法律責任。

相關文章