0

我有一个大约 10 列类型为 VARHCAR 且大小 > 2000 的表。我试图通过使用临时列并在复制数据后重命名将它们转换为 CLOB。其中 4 列没有问题,但我得到所有剩余列的 ORA-00932。下面是为每一列重复的 SQL。

ALTER TABLE TABLE1 ADD (TEMP_CLOB CLOB );
UPDATE TABLE1 SET TEMP_CLOB=BIG_VARCHAR_COLUMN;
ALTER TABLE TABLE1 DROP COLUMN BIG_VARCHAR_COLUMN;
ALTER TABLE TABLE1 RENAME COLUMN TEMP_CLOB TO BIG_VARCHAR_COLUMN;

这是错误报告:

SQL Error: ORA-00932: inconsistent datatypes: expected - got CLOB
00932. 00000 -  "inconsistent datatypes: expected %s got %s"
*Cause:    
*Action:
4

1 回答 1

0

这是由与正在修改的列相关的触发器引起的。修复是在此更改之前禁用触发器,然后启用它们。

于 2012-10-29T03:50:05.820 回答