alter table TABLE_NAME add TMP_COL NUMBER(10,3);-- 添加临时列
update TABLE_NAME set TMP_COL = COL_NAME; --将目标字段中数据加入到临时列中
update TABLE_NAME set COL_NAME = null; --将目标字段数据清空
alter table TABLE_NAME modify ( COL_NAME NUMBER(10,3)); --更改目标字段类型
update TABLE_NAME set COL_NAME = TMP_COL; --将临时列数据加回到目标字段中
alter table TABLE_NAME drop column TMP_COL; --清除临时列
显示错误:ORA-01439: column to be modified must be empty to change datatype
oracle修改字段类型时原字段有内容无法修改的解决办法,记录一下
转载自大佬
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jumewo/article/details/30034393
本文介绍了一种在Oracle数据库中修改字段类型的实用方法,当原字段含有数据时,通过创建临时列、转移数据、清空并修改原字段类型,再将数据移回原字段,最后删除临时列的步骤,成功解决ORA-01439错误。

920

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



