oracle中字段類型修改
今天公司因為業務需要,修要修改某個字段數據類型有number(5),變為number(5,2)型 要是沒有數據的話直接用以下語句即可 alter?? table tb_test modify permile number(5,2); 但是有數據的話 就不能用上面方法了, alter table tb_test add permile_temp number(5,2) update tb_test set permile_temp=permile; alter table drop column permile; alter table test rename column permile_temp to permile; 這種方法會使列名發生變化,而且字段順序增加 有可能發生行遷移,對應用程序會產生影響 以下方法是比較好的方法 不用使列名發生變化 也不會發生表遷移,但這個有個缺點是表要更新兩次 如果數據量較大的話 產生的undo和redo更多 ,前提也是要停機做 要是不停機的話 ,也可以采用在線重定義方式來做 以下是腳本:
alter table b add ccc varchar2(15); |
posted on 2009-04-12 13:57 tobyxiong 閱讀(1081) 評論(0) 編輯 收藏 所屬分類: DATABASES