更新时间:2025-06-04 GMT+08:00

U0400010:GaussDB分布式不支持AUTO_INCREMENT属性

描述

数据库类型与版本

  • 源库类型与版本:MySQL 5.5、5.6、5.7、8.0版本。
  • 目标库类型与版本:GaussDB分布式版。

语法示例

迁移到GaussDB分布式,默认情况下,UGO不转换列的AUTO_INCREMENT属性,并生成此错误提示。

GaussDB分布式的MYSQL兼容模式表定义时,不支持列指定AUTO_INCREMENT属性,如下示例在GaussDB分布式中不支持。

CREATE TABLE auto_increment_test (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(64)
);

改造建议

1、修改“AUTO_INCREMENT转换”转换配置项。

2、GaussDB也提供了序列整型来实现自增列,通过手工改造的方式将原来的AUTO_INCREMENT列改成序列整型,序列整型底层是通过序列来实现。需要注意的是MySQL的自增列插入用户自定义数据时,自增列将自动调整成从当前的最大值开始递增,但是GaussDB的自定义序列或者序列整型始终从序列的当前值递增。