特点:
1、标识列必须和主键搭配吗?不一定,但要求是一个key
2、一个表可以有几个标识列?至多一个!
3、标识列的类型只能是数值型
4、标识列可以通过 SET auto_increment_increment=3;设置步长
可以通过 手动插入值,设置起始值
#1、创建表时设置标识列
在插入的列后面 添加关键字 AUTO_INCREMENT
DROP TABLE IF EXISTS tab_identity;
CREATE TABLE tab_identity(id INT PRIMARY KEY AUTO_INCREMENT ,#自动增长必须搭配key
NAME VARCHAR(10));
INSERT INTO tab_identity(id,NAME) VALUES(1,'yudengwu');
INSERT INTO tab_identity(id,NAME) VALUES(NULL,'john');
INSERT INTO tab_identity(NAME) VALUES('lucy');
SELECT * FROM tab_identity;
1
2
3
4
5
6
7
8
9
10
11
12
13
结果 ID2 和ID3 是自动增长的
自动增长的插入时可以写null,可以不写
#2、修改自动增长步长
#查看
SHOW VARIABLES LIKE '%auto_increment%';
1
2
默认为1
第一个为步长,第二个为起始值,起始值不支持值
修改步长
SET auto_increment_increment=3;
1
重新插入数据
SHOW VARIABLES LIKE '%auto_increment%';
SET auto_increment_increment=3;
DROP TABLE IF EXISTS tab_identity;
CREATE TABLE tab_identity(id INT PRIMARY KEY AUTO_INCREMENT ,
NAME VARCHAR(10));
INSERT INTO tab_identity(id,NAME) VALUES(1,'yudengwu');
INSERT INTO tab_identity(id,NAME) VALUES(NULL,'john');
INSERT INTO tab_identity(NAME) VALUES('lucy');
SELECT * FROM tab_identity;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#3、修改表时设置标识列
ALTER TABLE 表名 MODIFY COLUMN 列名 INT 键 AUTO_INCREMENT;#
ALTER TABLE tab_identity MODIFY COLUMN id INT UNIQUE AUTO_INCREMENT;#设置唯一键