在本教程中,我们将向您展示如何使用MySQL序列为表的ID列自动生成唯一编号。
创建MySQL序列
在MySQL中,序列是以升序生成的整数列表,即1,2,3 ...许多应用程序需要序列来生成主要用于识别的唯一数字,例如:CRM中的客户ID,HR中的员工编号,服务器管理系统的设备编号等。
要自动在MySQL中创建序列,可以在列上设置AUTO_INCREMENT属性,这通常是主键列。
使用AUTO_INCREMENT属性时,将应用以下规则:
每个表只有一个AUTO_INCREMENT列,其数据类型通常为整数。
必须对AUTO_INCREMENT列进行索引,它可以是PRIMARY KEY或UNIQUE索引。
AUTO_INCREMENT列必须具有NOT NULL约束。当您为列设置AUTO_INCREMENT属性时,MySQL会自动将NOT NULL约束隐式添加到列中。
创建MySQL序列示例
以下语句创建一个名为employees的表,其emp_no列为AUTO_INCREMENT列:
USE testdb;
CREATE TABLE employees(
emp_no INT(4) AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50)
);
MySQL序列如何工作
AUTO_INCREMENT列具有以下属性:
AUTO_INCREMENT列的起始值为1,当您向列中插入NULL值或在INSERT语句中省略其值时,它将增加1。