- 当字段没有数据或者要修改的新类型和原类型兼容时,可以直接modify修改
alter table tb modify (colname varchar2(20)); - 当字段有数据并用要修改的新类型和原类型不兼容时,要间接新建字段来转移
a.修改原字段名name为name_tmp
alter table tb rename column colname to colname_tmp;
b.增加一个和原字段名同名的字段name
alter table tb add colname varchar2(40);
c.将原字段colname_tmp数据更新到增加的字段colname
update tb set colname=colname_tmp;
d.更新完,删除原字段colname_tmp
alter table tb drop column colname_tmp;
it’s very easy to be different,but very difficult to be better.
本文详细介绍了在Oracle数据库中修改字段类型的两种策略:直接修改(适用于无数据或类型兼容场景)与间接修改(通过创建新字段转移数据,适用于有数据且类型不兼容场景)。间接修改包括重命名原字段、新增同名字段、更新数据至新字段及删除原字段四个步骤。
846

被折叠的 条评论
为什么被折叠?



