Oracle中修改某个字段可以为空

时间:2021-03-28 15:09:57

待修改字段假定为:shuifen

1.当该字段为空时,可直接修改:

alter table reportqymx modify shuifen null;


2.当待修改字段不为空时:
新增一列
把要改变的列的值转移过去并清空原列的值
改变列的数据类型
把值转移回来,并删除新增的列
alter table reportqymx add shuifen_temp number(10);  
update reportqymx set shuifen_temp=shuifen;  
alter table reportqymx modify shuifen null;  
update reportqymx set shuifen=shuifen_temp;  
alter table reportqymx drop column shuifen_temp;