本文将介绍使用Sequence过程中的注意事项及问题处理的方法。

New Sequence

  • New Sequence暂不支持自定义步长、最大值和循环分配等特性;
  • New Sequence仅支持在5.4.14及以上版本的AUTO模式数据库中使用;
  • 如果已经创建过New Sequence,但要降级到不支持New Sequence的版本上,则必须在降级前将所有New Sequence转换成Group Sequence,转换方法如下:
    • 通过INFORMATION_SCHEMA.SEQUENCES视图查询实例范围内是否存在New Sequence;
    • 若New Sequence存在,使用转换语句CONVERT ALL SEQUENCES FROM NEW TO GROUP将实例下的所有New Sequence转换为Group Sequence,详情请参见CONVERT SEQUENCES

Group Sequence

  • 5.4.13及以下版本,5.4.14及以上版本的DRDS模式数据库中,默认使用Group Sequence;
  • Group Sequence的值从100001开始分配,即起始值(可分配的最小值)为100001;
  • 单元化Group Sequence不支持作为源或目标的类型转换,也不支持修改起始值以外的参数;
  • 属于同一个全局唯一数字序列分配空间的每个单元化Group Sequence ,必须指定相同的单元数量和不同的单元索引,以保证跨实例或跨库的全局唯一性。

Time-based Sequence

将Time-based Sequence用于表中自增列时,该列必须使用BIGINT类型。