为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: DM Database Server 64 V8
DB Version: 0x7000c
03134284044-20230417-187846-20040
【操作系统】:Linux
【CPU】:
【问题描述】*:begin
execute immediate 'ALTER TABLE re_material MODIFY tttt varchar(555) null';
execute immediate 'COMMENT ON COLUMN re_material.tttt IS ''备注''';
end;
从text转成varchar(555)的时候报错了
begin
execute immediate 'ALTER TABLE re_material MODIFY tttt varchar(555) null';
execute immediate 'COMMENT ON COLUMN re_material.tttt IS ''备注''';
end;
执行失败(语句1)
-6160: 数据类型的变更无效
1条语句执行失败
不允许从text类型直接改成varchar类型
可以考虑新将一个同样表结构的表,只是要修改的字段改成varchar,然后使用create table 旧表名 as select * from 新表名 方式将数据插入到新表中,将旧表删除,再将新表改回原来的表名,这样间接来修改字段类型