Mysql表自增步长问题

测试时经常需要构造数据,当对mysql表批量插入数据时,遇到问题:表中字段id是主键,批量插入数据时需要先查看max(id),然后再insert语句中对每个id值依次按步长添加且要大于库里最大值。这样构造起来比较麻烦。

分析:检查mysql表是否存在主键,是否设置主键自动增加;

show create table  tablename;

 

 

 

查看主键自增步长:

SHOW VARIABLES LIKE 'auto_inc%';  

 

 

 

自增值机制:

如果字段id被定义为AUTO_INCREMENT,在插入一行数据的时候,自增值的行为如下:

1.如果插入数据时id字段指定为0null或未指定值,那么就把这个表当前的AUTO_INCREMENT值填到自增字段

2.如果插入数据时id字段指定了具体的值,就直接使用语句里指定的值

这种情况下insert语句只需要避开主键insert即可

posted @ 2021-02-24 16:51  第五个季节xjw  阅读(401)  评论(0)    收藏  举报