oralce大表修改字段類型方法

把表test_t字段A之前的number類型修改爲varchar2

修改方式:

1 創建temp_data varchar2(100) ,(字段名稱,類型根據情況自定)。

2 把表字段A賦值到temp_data中,並行update。

3 把字段A清空,並行update。

4 modify A字段爲 varchar2(100)。

5 把字段temp_data賦值到A,並行update。

6 把字段temp_data設置爲unuse。

7 drop unuse字段。

 

示例:

CREATE TABLE test_t
(
a NUMBER)
;


 

ALTER TABLE TEST_t ADD temp_data VARCHAR2(100);

--開啓並行
alter session enable parallel dml; 

UPDATE   /*+parallel(t 20) */  TEST_t t
SET t.temp_data=t.a  ;
COMMIT;

UPDATE  /*+parallel(t 20) */  TEST_t t
SET t.a=NULL;
COMMIT;

alter table TEST_T modify a varchar2(100);

UPDATE  /*+parallel(t 20) */  TEST_t t
SET t.a=t.temp_data;
COMMIT;

--設置字段無效
ALTER TABLE test_t SET UNUSED (temp_data);
--刪除無效字段
ALTER TABLE test_t DROP UNUSED COLUMN;
--查看無效字段是否刪除
SELECT * FROM user_unused_col_tabs;



 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章