默认生成为身份 DB2
GENERATED BY DEFAULT AS IDENTITY DB2
我正在使用 DB2,当我创建 table 时,我使用 GENERATED BY DEFAULT AS IDENTITY
作为主键。
当我在 table 上插入新行时,主键的生成值不是 ID 的最大值。
这正常吗?
生成的数字不重复,但不是最大值。
这种行为是意料之中的。请参阅 CREATE TABLE statement 和 AS IDENTITY 的选项。您可以设置起始值 (START WITH) 以告知 Db2 从特定值开始计数。
数据库系统用于标识列的算法是有一个序列。他们从该序列中获取值。他们不会主动在现有数据中寻找可用值。
我正在使用 DB2,当我创建 table 时,我使用 GENERATED BY DEFAULT AS IDENTITY
作为主键。
当我在 table 上插入新行时,主键的生成值不是 ID 的最大值。
这正常吗?
生成的数字不重复,但不是最大值。
这种行为是意料之中的。请参阅 CREATE TABLE statement 和 AS IDENTITY 的选项。您可以设置起始值 (START WITH) 以告知 Db2 从特定值开始计数。
数据库系统用于标识列的算法是有一个序列。他们从该序列中获取值。他们不会主动在现有数据中寻找可用值。