Я установил MySQL Workbench на днях, получил доступ к базе данных моей компании и сделал себе таблицу для работы. Все идет нормально. Проблема в том, что я заметил, что мой auto_increment увеличивается на 2 на 2. Например:
ID NAME
1 Paul
3 Jack
5 Louis
7 John
...
Когда я SHOW VARIABLES LIKE 'auto_inc%'
получаю это:
'auto_increment_increment', '2'
'auto_increment_offset', '1'
Поэтому я попытался установить auto_increment_increment
1 с:
SET @@auto_increment_increment=1
И после проверки снова SHOW VARIABLES LIKE 'auto_inc%'
я подтвердил, что это «сработало» с результатом:
'auto_increment_increment', '1'
'auto_increment_offset', '1'
Но мои идентификаторы все еще увеличиваются в 2 на 2 .
В первый раз, когда я сделал это, это работало хорошо, а затем я закрыл MySQL Workbench, чтобы понять, что когда я снова открыл его, auto_increment_increment
было установлено значение 2 снова. Сейчас я пытаюсь сделать это снова, но, похоже, это больше не работает.
Может ли кто-нибудь помочь мне с этим, пожалуйста?
Спасибо, парни.
источник
Ответы:
Префикс, который был использован:
Такой же как:
При изменении этого параметра он становится актуальным только в текущем сеансе.
Чтобы сделать более постоянное исправление, попробуйте:
Такой же как:
источник
Обе переменные имеют глобальные значения и значения сеанса. Таким образом, очень вероятно, что вы изменили только значение сеанса, которое пропало, когда вы закрывали MySQL Workbench.
Еще одна оговорка, на которую следует обратить внимание, это то, что
Вас также может обмануть способ вычисления следующего значения автоинкремента при изменении размера приращения. Он не использует последнее сохраненное значение столбца, но вычисляет следующее наибольшее значение по формуле
в то время как N является целым числом, так что новое значение больше, чем наибольшее из существующих.
Смотрите документацию auto_increment_increment, как это работает в деталях.
источник