Я написал java-программу, которая обращается к базе данных innodb MySQL.
Всякий раз, когда оператор INSERT IGNORE встречает дублируемую запись, первичный ключ Auto Increment увеличивается.
Ожидается ли такое поведение? Я думаю, что это не должно происходить с IGNORE. Это означает, что IGNORE фактически несет дополнительные накладные расходы для записи нового значения первичного ключа.
Таблица выглядит следующим образом:
CREATE TABLE `tablename` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`rowname` varchar(50) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `rowname` (`rowname`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Спасибо!