Автоинкремент был сброшен до 1 автоматически

Jan Krupa спросил: 11 марта 2019 в 07:43 в: mysql

Я только что столкнулся с проблемой, которую не могу решить.

У меня есть таблица базы данных project_queues, которая используется в качестве очереди, где я храню некоторые записей. Когда записи обрабатываются, они удаляются. Удаление вызывается конструкцией rails record.destroy в цикле, который запускает DELETE record FROM table в базе данных MySql.

Но теперь я ' мы заметили, что в таблице project_queues autoIncrement Id (первичный ключ) был установлен обратно в 1. (Это повредило мои ссылки в таблице аудита. Одна и та же запись теперь указывает на несколько разных очередей проекта)

show create table project_queues;CREATE TABLE `project_queues` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
   ...
   ...
  `created_at` datetime NOT NULL,
  `updated_at` datetime NOT NULL,
  PRIMARY KEY (`id`),
) ENGINE=InnoDB AUTO_INCREMENT=1 

Я не использую TRUNCATE project_queues или удаляю таблицу конструкция и снова создал его в коде.

Кто-нибудь сталкивался с подобной проблемой, как я? Я также не могу найти никаких аномалий в журнале.

Я использую Rails 5.2.3, MariaDB 10.1.

Соединение приложения с базой данных обеспечивает следующие режимы SQL:

  • NO_AUTO_VALUE_ON_ZERO
  • STRICT_ALL_TABLES
  • NO_AUTO_CREATE_USER
  • NO_ENGINE_SUBSTITUTION
  • NO_ZERO_DATE
  • NO_ZERO_IN_DATE
  • ERROR_FOR_divISION_BY_ZERO

Но я не думаю, что это как-то связано с ИИ.

0 ответов