ORA-01439:要更改数据类型,则要修改的列必须为空

--1.修改原字段名name为name_tmp
alter table kpidb.tem_ensure_person_min  rename column plan_in_time to plan_in_time_tmp;

--2.增加一个和原字段名同名的字段name
alter table kpidb.tem_ensure_person_min  add plan_in_time date;

--3.将原字段数据更新到增加的字段(新增字段类型与原字段类型不一致)
update kpidb.tem_ensure_person_min  set plan_in_time=(to_date(trim(plan_in_time_tmp), 'yyyy-mm-dd hh24:mi:ss'));

--4.更新完,删除原字段
alter table kpidb.tem_ensure_person_min  drop column plan_in_time_tmp;

posted @ 2021-08-16 16:06  深海蓝精灵  阅读(384)  评论(0编辑  收藏  举报