MySQL AUTO_INCREMENT 操作符

时间:2019-02-04 12:52:31  来源:igfitidea点击:

在MySQL中,可以使用AUTO_INCREMENT操作符创建一个包含数字序列(1、2、3等)的列。AUTO_INCREMENT操作符用于在需要创建一个唯一的数字来充当表中的主键时。

语法

在MySQL中创建序列的语法为:

CREATE TABLE table_name
(
column1 datatype NOT NULL AUTO_INCREMENT,
column2 datatype [ NULL | NOT NULL ],
...
);

参数说明
AUTO_INCREMENT指定为字段值分配一个自动编号,每插入一行,编号加一。
NULL | NOT NULL指定字段是否为NULL,默认是NULL

AUTO_INCREMENT 操作符示例

CREATE TABLE contacts
( contact_id INT(11) NOT NULL AUTO_INCREMENT,
  last_name VARCHAR(30) NOT NULL,
  first_name VARCHAR(25),
  birthday DATE,
  CONSTRAINT contacts_pk PRIMARY KEY (contact_id)
);

创建了一个名为contacts的表,其中contact_id的值是自增长的。

设置AUTO_INCREMENT起始值

默认AUTO_INCREMENT的起始值为1, 可以使用ALTER TABLE语句进行更改。

语法

使用ALTER TABLE语句更改AUTO_INCREMENT列的起始值的语法为:

ALTER TABLE table_name AUTO_INCREMENT = start_value;

start_value分配AUTO_INCREMENT列的下一个值

示例

ALTER TABLE contacts AUTO_INCREMENT = 50;

下一个记录的contact_id字段值是50。