如何在 MySQL 中设置初始值和自动增量?

AUTO_INCREMENT 属性用于为新行生成唯一标识。如果列被声明为“NOT NULL”,则可以将 NULL 分配给该列以生成数字序列。

当任何值插入到 AUTO_INCREMENT 列中时,该列将被设置为该值,并且该序列也会被重置,以便它在从最大列值开始的顺序范围内自动生成值。

可以更新现有的“AUTO_INCREMENT”列,这也将重置“AUTO_INCREMENT”序列。最近自动生成的 'AUTO_INCREMENT; 可以使用LAST_INSERT_ID()SQL 中的“ ”函数或使用mysql_insert_id()C API 函数“ ”检索值。

这些函数是特定于连接的,这意味着它们的返回值不受执行插入操作的其他连接的影响。可以使用“AUTO_INCREMENT”列的最小整数数据类型,它足够大以容纳用户所需的最大序列值。

AUTO_INCREMENT 规则

使用 AUTO_INCREMENT 属性时需要遵循以下规则 -

  • 每个表只有一个 AUTO_INCREMENT 列,其数据类型通常为整数。

  • AUTO_INCREMENT 列需要被索引。这意味着它可以是 PRIMARY KEY 或 UNIQUE 索引。

  • AUTO_INCREMENT 列必须有一个 NOT NULL 约束。

  • 当 AUTO_INCREMENT 属性设置为列时,MySQL 会自动将 NOT NULL 约束添加到自己的列中。

如果未将 id 列添加到表中,则可以使用以下语句 -

ALTER TABLE tableName ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (id);

如果 id 列已经存在,则可以使用以下命令 -

ALTER TABLE tableName AUTO_INCREMENT=specificValue;

这里,tableName 是指需要设置“AUTO_INCREMENT”列的表 fr 的名称。'specificValue' 指的是一个整数,从用户指定的 'AUTO_INCREMENT' 值开始。

以上是 如何在 MySQL 中设置初始值和自动增量? 的全部内容, 来源链接: utcz.com/z/311383.html

回到顶部