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;

 

posted @ 2023-08-03 15:38  along_bro  阅读(286)  评论(0编辑  收藏  举报