解决 ORACLE 修改表字段NUMBER精度报错
错误:column to be modified must be empty to decrease precision or scale
出现这样的错误,是由于 ORACLE 数据引擎不允许存在拥有数据的情况下,进行精度修改。于是可以按照以下方法进行解决
解决方案
步骤 1 :备份原来的表
CREATE TABLE MY_BAK AS SELECT * FROM YOUR_TABLE;
步骤 2 :删除原来的表数据
DELETE FROM YOUR_TABLE;
步骤 3:
手动进行相应的字段精度修改,比如 Navicat / PL SQL 工具。
步骤 4:恢复数据
INSERT INTO YOUR_TABLE SELECT * FROM MY_BAK;
以上操作即可完美修改 Number 的精度,并且保留现有的数据。