執行:alter table bosp_htjs_material_information modify taxrate number(16,3);
直接執行若是有數據會有報錯:ORA-01440: column to be modified must be empty to decrease precision or scaleorm
數據不是很是大的狀況下解決辦法:1.備份表數據,2.清空原表對應列 3.修改字段精度。4.同步更新數據值。5.截斷備份的臨時表並刪除ci
--1.create table BOSP_HTJS_MATERIAL_BAK as select * from BOSP_HTJS_MATERIAL_INFORMATION;
select * from BOSP_HTJS_MATERIAL_BAK;
--2.update BOSP_HTJS_MATERIAL_INFORMATION MI set MI.FEED_NUM = null;
select * from BOSP_HTJS_MATERIAL_INFORMATION;同步
--3.alter table BOSP_HTJS_MATERIAL_INFORMATION modify FEED_NUM number(16,3);io
--4.update BOSP_HTJS_MATERIAL_INFORMATION MI set MI.FEED_NUM = (
select MB.FEED_NUM from BOSP_HTJS_MATERIAL_BAK MB where MB.id = MI.id
);table
--5.truncate table BOSP_HTJS_MATERIAL_BAK;drop table BOSP_HTJS_MATERIAL_BAK;form