oracle調整欄位精度的四種方法:
01_執行用戶_ddl/dml_表名_注釋(建表/授權/同義詞)
調整方式一:(精度只能調大不能調小)
alter table table_name_a MODIFY (column_AXX number(27,15));
調整方式二:(借用一個新的列調整)
alter table table_name_a add (column_temp number(27,15));
update table_name_a set column_temp = round(column_AXX,15);
alter table table_name_a drop column column_AXX;
alter table table_name_a add (column_AXX number(27,15));
update table_name_a set column_AXX = column_temp;
alter table table_name_a drop column column_temp;
方式三:(在不影響資料使用的情況下,效率略低)
alter table table_name_a add (column_temp number(30,15));
update table_name_a set column_temp = round(column_AXX,15);
update table_name_a set column_AXX = null;
alter table table_name_a MODIFY (column_AXX number(30,15));
update table_name_a set column_AXX = column_temp;
alter table table_name_a drop column column_temp;
方式四:重新創建一張符合要求的表,通過同義詞切換使用(速度最快,效率最優)
user_fu(建表): create table table_name_b;
user_fu(授權): grant select, insert, update, delete on table_name_b to user_zi;
user_fu(copy): INSERT INTO table_name_b SELECT * FROM table_name_a;
user_zi(同義詞): create or replace synonym table_name_a for user_fu.table_name_b;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/65901.html
標籤:其他
