声明:此MySQL基础学习源自尚硅谷。(推荐)b站官方链接:https://www.bilibili.com/video/BV1xW411u7ax?p=1
标识列
| 又称为自增长列 |
| 含义:可以不用手动的插入值,系统提供默认的序列值 |
| |
| 特点: |
| 1、标识列必须和主键搭配吗?不一定,但要求自增长列必须为一个key |
| 2、一个表至多有一个自增长列 |
| 3、标识列的类型只能是数值型 |
| 4、标识列可以通过 SET auto_increment_increment=3; # 设置步长 |
| 可以通过 手动插入值,设置起始值 |
| 5、不用手动插入值,可以自动提供序列值,默认从1开始,步长为1 |
| auto_increment_increment |
| 如果要更改起始值:手动插入值 |
| 如果要更改步长:更改系统变量 # set auto_increment_increment=值; |
1.创建表时设置标识列
| DROP TABLE IF EXISTS tab_identity; |
| CREATE TABLE tab_identity( |
| id INT PRIMARY KEY AUTO_INCREMENT, # AUTO_INCREMENT标明是标识列 |
| NAME FLOAT UNIQUE, |
| seat INT |
| |
| ); |
| TRUNCATE TABLE tab_identity; |
| |
| # id是自增长列,id值设为null每添加数据,id值自动增加 |
| INSERT INTO tab_identity(id,NAME) VALUES(NULL,'john'); |
| # 省略列名id,每添加数据,id值自动增加 |
| INSERT INTO tab_identity(NAME) VALUES('lucy'); |
| # 查看系统变量 |
| SHOW VARIABLES LIKE '%auto_increment%'; |
| |
| |
| # 设置系统变量步长,每次增长3(一般不改) |
| SET auto_increment_increment=3; |

| |
| # 如:从10开始 |
| insert into 表名(id,字段) value (10,值); |
| insert into 表名(字段) value (值); # 至此id从10开始,每次增长1 |
2.修改表时设置自增长列
| alter table 表 modify column 字段名 字段类型 约束 auto_increment; |
3.删除自增长列
| alter table 表 modify column 字段名 字段类型 约束; |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步