如果要修改表的一个字段 数据类型,若表里有数据了,oracle是不能修改,需清空表才行。
若不想清空表的数据,则可通过以下方案:
先对表数据进行备份表,再删除表数据,修改表结构,将备份表数据重插回原表中,最后删除备份表。
//先对表数据进行备份表
create table f10_dividend_bak as select * from f10_dividend;
//再删除表数据
delete from f10_dividend;
//修改表结构
alter table f10_dividend modify dividend_ratio_before_tax NUMBER(19,6);
//将备份表数据重插回原表中
insert into f10_dividend select * from f10_dividend_bak;
//最后删除备份表。
drop table f10_dividend_bak;
commit;
SQLServer 的 备份表语句:
SELECT * INTO collect_conf_bak FROM collect_conf;
本文介绍了一种在Oracle数据库中修改已填充数据表字段类型的解决方案。通过创建备份表、清空原始表、更改字段类型,再从备份表导入数据的方法,避免了直接修改字段类型导致的数据丢失。同时提供了SQL Server备份表的示例。
740

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



