MySQL数据库的字段设置自增长
创建表
create table users(
id int not null primary key auto_increment,
name varchar(32) not null
)engine=innodb default charset=utf8mb4;
设置了字段id,name(id为自增长)。
alter table users auto_increment=23(自己指定一个数字);
当表创建后为其中插入一条数据时,如果以上述方式指定其自增长从23开始,则创建时不指定id的值,则其的自增长字段值为23。
也就是说id会从23开始自增。
当修改自增长的值后,如果继续添加指定的字段id为3的数据,可以继续添加。
alter table users auto_increment=1000;
但是修改该自增长值为1000后,
insert into users(name) value("zhangsan");
添加一条新得不指定id的数据,则id=1000,
此时如果修改自增长值为500。
alter table users auto_increment=500;
如果往里边继续添加不指定id值得数据,则该id不会从500开始给其赋值。
原因是字段中有id值为1000得数据,如果插入了500条数据后,自增长且唯一得特性就被破坏了,有id值为1000得两个数据重复了。
修改auto_increment=500的操作就失效了。