Mysql中的auto_increment
Mysql中的auto_increment
1.创建
2.使用
【1】如果不写固定列,则必须要插入该列,可以直接写Null,否则会报错
【2】可以直接在auto_increment 列上直接插入显式值,并且会改变当前自增值,如下图,插入8之后,后面的自增就会接着往下走
【3】事后直接修改自增标识值
【4】建表时设置自增值
3.注意事项
【1】、被auto_increment修饰的列为标识列,可以自动增长。一张表中只能有一个标识列。
【2】、auto_increment只能用来修饰数值类型的列,并且该类型的列列只能为key类型的列,key类型的列有:primary key 、unique、key、foreign key
1.创建
create table test1011( id int primary key auto_increment ,
num int )
2.使用
【1】如果不写固定列,则必须要插入该列,可以直接写Null,否则会报错
【2】可以直接在auto_increment 列上直接插入显式值,并且会改变当前自增值,如下图,插入8之后,后面的自增就会接着往下走
问:这个时候,如果再插入一个ID为6的数据行,后续再插入id为null的数据会怎么样?
答:这个时候mysql会自动找该表中id列最大的值,然后顺序+1作为新的自增ID值。
【3】事后直接修改自增标识值
alter table test1011 auto_increment=100;
【4】建表时设置自增值
create table test1012(id int primary key auto_increment,num int ) auto_increment=100;
3.注意事项
【1】、被auto_increment修饰的列为标识列,可以自动增长。一张表中只能有一个标识列。
【2】、auto_increment只能用来修饰数值类型的列,并且该类型的列列只能为key类型的列,key类型的列有:primary key 、unique、key、foreign key