Oracle列表分割槽

2021-04-14 23:37:44 字數 713 閱讀 3638

今天做了一件錯事,總結經驗如下吧。

當一張表的列表分割槽建錯時,千萬不要直接drop partition ,否則將導致該分割槽的資料丟失,而且不可恢復,深刻教訓啊,現在還不知道怎麼渡過這個難關啊,害怕ing.

可以採取的方法:(以範圍分割槽舉例,此處以城市區號為例分割槽)

1.例如原來的分區分到了598,這樣599就無法插入,現在要新建乙個分割槽在600(np),然後將598的分割槽合併到600中。後面將597-591得分割槽都合併至600中,新建、合併語句如下:

alter table sales add partition np

values less than 600

tablespace ts_sale2000q1;

alter table sales merge partitons **,np into partiton np;

2.將600的分割槽進行拆分,從599開始拆分,直至拆分到591

alter table sales

split partiton np

at 599

into (**,np) ;

這樣逐步迴圈就能實現拆分了。

3.因為oracle預設在修改分割槽時,會設定索引為unuseable狀態,所以在處理完後,可以重建所以

例如該錶有乙個所以zd_index

則alter index zd_index rebuild;

就可以解開索引了

oracle高階 列表分割槽 復合分割槽

列表分割槽 create table student sid number,sname varchar2 20 province varchar2 20 partition by list province partition north values 河南 安徽 河北 山東 partition s...

Oracle 表分割槽 復合分割槽

oracle表分割槽 範圍分割槽 oracle.表分割槽 雜湊分割槽 oracle.表分割槽 列表分割槽 oracle.表分割槽 復合分割槽 oracle表分割槽 操縱已分割槽的表 範圍分割槽與雜湊分割槽或列表分割槽的組合 語法 partition by range column name1 sub...

Oracle 表分割槽 子分割槽

create table temp table id varchar2 32 default sys guid not null,datetime date,filepath varchar2 500 byte filestate char 1 byte areacode varchar2 20 b...