Mysql 使用生成的密钥进行批量插入,在唯一

Mysql 使用生成的密钥进行批量插入,在唯一,mysql,batch-file,insert,key,generated,Mysql,Batch File,Insert,Key,Generated,我将MySql与JDBC一起使用……下面是我的表定义 CREATE TABLE `A` ( `id` int(255) NOT NULL AUTO_INCREMENT, `type` varchar(255) NOT NULL, `value` varchar(255) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `unq` (`type`(50),`value`(50)) ) ENGINE=InnoDB AUTO_INCREMENT=1

我将MySql与JDBC一起使用……下面是我的表定义

CREATE TABLE `A` (
  `id` int(255) NOT NULL AUTO_INCREMENT,
  `type` varchar(255) NOT NULL,
  `value` varchar(255) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `unq` (`type`(50),`value`(50))
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
目前,我正在使用语句,以便使用
RETURN\u GENERATED\u KEYS
选项将行批插入到该表中,以便将id与其他表关联起来

我希望能够执行该操作,但当/如果出现重复条目(类型和值的相同组合)时,继续事务,就像什么都没有发生一样,但仍然可以获取生成的密钥,如果出现重复条目,则检索现有密钥


谢谢

使用
忽略
关键字

INSET IGNORE ....
引述

如果使用IGNORE关键字,则会显示在执行 INSERT语句被视为警告。例如,没有 忽略,复制现有唯一索引或主键的行 表中的值会导致重复键错误,并且该语句为 流产了。使用“忽略”时,仍不会插入行,但不会出现错误 发布

替代语法


但它仍会检索现有条目的id吗?