Mysql主键的重复条目(AUTO_INCREMENT)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql主键的重复条目(AUTO_INCREMENT)相关的知识,希望对你有一定的参考价值。

在我的程序中,我将记录插入表tbl_name。但是我得到了一个'重复的主键输入'错误,这让我很困惑,这是我的代码和错误。

表:

CREATE TABLE `tbl_name` (
`id` int(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`name` varchar(255) NOT NULL DEFAULT '' COMMENT 'name',
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=514 DEFAULT CHARSET=utf8 COMMENT='table'

码:

public Integer batchInsert() {
    List<Object[]> updateList = Arrays.asList("name1","name2");

    if (updateList.size() > 0) {
        String insertSql = "insert into tbl_name (`name`) values (?)";
        jdbcTemplate.batchUpdate(insertSql, updateList);
    }
    return updateList.size();
}

错误:

17-11-18.00:26:00.262 [pool-5-thread-1] ERROR ApprovalService  - ERROR message: {"code":1,"message":"PreparedStatementCallback; SQL []; Duplicate entry '501' for key 'tbl_name_id'; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '501' for key 'tbl_name_id'","errorStackTraceMessage":null}
答案

将主键列值增加到502.它将开始工作。

以上是关于Mysql主键的重复条目(AUTO_INCREMENT)的主要内容,如果未能解决你的问题,请参考以下文章

MySQL上主键的重复条目

Mysql主键的重复条目(AUTO_INCREMENT)

如何避免没有主键和唯一键的重复条目?

限制主键的最大条目

IntegrityError:(1062,键的重复条目)

SQL:选择另一个表中没有复合主键的条目