oracle修改varchar2为number

心已入冬 提交于 2020-12-31 05:00:47
核心提示: 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;
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!