oracle修改数据类型报错
1. nvarchar和blob类型转换时,直接modify会报错
ORA-01735: invalid ALTER TABLE option
2. 数字类型降低精度时 当数据库已有数据时,会报错
ORA-01440: column to be modified must be empty to decrease precision or scale
以上两种字段类型修改错误可以通过一下方式来避免
新建一个字段
将旧字段的值赋给新字段
删除原字段
将新字段名称改为原有字段名称
例子:将T_HAPPY表的字段 REMARK 从 NVARCHAR(100) 改为 CLOB
ALTER TABLE T_HAPPY ADD REMARKTEMP CLOB;
UPDATE T_HAPPY SET REMARKTEMP=REMARK;
ALTER TABLE T_HAPPY DROP COLUMN REMARK;
ALTER TABLE T_HAPPY RENAME COLUMN REMARKTEMP TO REMARK;