核心提示: oracle修改varchar2为number1.为目标列增加一个临时列 alter table t_user_blood_pressure add user_id2 number(20); 2.将目标列的值复制到临时列 update t_user_blood_pressure... |
oracle修改varchar2为number1.为目标列增加一个临时列
alter table t_user_blood_pressure add user_id2 number(20);
2.将目标列的值复制到临时列
update t_user_blood_pressure set user_id2=nvl(to_number(user_id),0);
3.删除目标列
alter table t_user_blood_pressure drop column user_id;
4.将临时列重命名为目标列
alter table t_user_blood_pressure rename column user_id2 to user_id;
5.建立目标表的临时表(select 目标表的时候重新组合列的顺序,将目标列的顺序调整回最初的位置,步骤1中加的列是放在表达最后位置)
create table t_user2 as select HTTP_MESSAGE_ID,LOCAL_DATE,USER_ID,MOBILE_NUMBER,SBP,DBP,HEART_RATE,ASSESSMENT,ALTER_1,ALTER_2,ALTER_3,ALTER_4 from t_user_blood_pressure;
6.drop目标表
drop table t_user_blood_pressure;
7.临时表重命名为目标表
rename t_user2 to t_user_blood_pressure;
|
来源:oschina
链接:https://my.oschina.net/u/727370/blog/138646