Oracle修改相關欄位的幾種常用方法

2021-05-22 21:23:11 字數 1221 閱讀 2784

以下的文章主要是介紹

oracle

修改欄位的幾種常用型別的以及實際操作方法,因為業務上的需要,要對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

permile_temp

=permile;  

alter table drop column permile;  

alter table test rename column permile_temp to permile; 

這種方法會使列名發生變化,而且字段順序增加 有可能發生行遷移,對應用程式會產生影響

以下方法是比較好的方法

不用使列名發生變化 也不會發生表遷移,但這個有個缺點是表要更新兩次

如果資料量較大的話 產生的undo和redo更多 ,前提也是要停機做

以下是指令碼: 

alter table tb_test add permile_temp number;  

add/modify columns  

alter table tb_test modify permile null;  

update tb_test set permile

permile_temp

=permile,permile

=null

;  commit;  

alter table tb_test modify permile number(5,2);  

update tb_test set permile

=permile_temp

,permile_temp

=null

;  commit;  

alter table tb_test drop column permile_temp;  

alter table tb_test modify permile not null;  

select * from tb_test ; 

oracle修改字段

oracle的字符集修改 查詢oracle服務端的字符集 simplified chinese china.us7ascii。可以用以下語句來查詢 select userenv language from dual 結果如下圖 img 由日誌可以看出dmp檔案的字符集是 zhs16gbk img 可...

修改ORACLE的字段順序

首先你要有乙個pl sql,其實沒有也行,但是這資料庫還是有乙個視覺化介面為好啊。1.首先,以sys使用者的身份登入pl sql 2.查詢出你要更改的表的id,以我本地的資料為例,我要改 finace 使用者下 income 這張表。注 oracle中的表要用大寫。select object id ...

Oracle修改欄位的方法

1 假設字段資料為空,則不管改為什麼字段型別,可以直接執行 alter table tb modify name nvarchar2 20 2 假設欄位有資料,則改為nvarchar2 20 可以直接執行 alter table tb modify name nvarchar2 20 3 假設欄位有...