执行更改字段类型的DDL报错 Unsupported modify column & tidb_enable_change_column_type is false

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:

【TiDB 版本】
V5.0.0-RC

【问题描述】

[SQL]ALTER TABLE test MODIFY COLUMN fee decimal(16,0) comment ‘手续费’;
[Err] 8200 - Unsupported modify column: decimal change from decimal(16, 2) to decimal(16, 0), and tidb_enable_change_column_type is false

执行命令:
SET GLOBAL tidb_enable_change_column_type=1;

上面的DDL可以正常执行了。。

但是为什么我在系统参数里看不到 tidb_enable_change_column_type 这个参数?

mysql> show variables like ‘%tidb_enable_change_column_type%’;
Empty set (0.00 sec)

目前在 5.0 中有些参数对 show variables 隐藏了,可以使用 select 查看到。

select @@tidb_enable_change_column_type;

1 个赞

好的,我试一下,感谢!

:handshake:

遇到了同款问题,竟然已经被解答过了。

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。