#php #kohana #mysql
Нагуглил, что для обнуления AUTO_INCREMENT нужен следующий запрос: ALTER TABLE <имя таблицы> AUTO_INCREMENT=0 Как этот запрос написать в Kohana при помощи модуля ORM?
Ответы
Ответ 1
Помог обычный mysql mysql_connect('localhost', 'root', '1234'); mysql_select_db('al_categories'); $query = 'ALTER TABLE al_categories AUTO_INCREMENT=4'; mysql_query($query); mysql_close();Ответ 2
А вообще, как-то так не пойдёт? DB::query(null, 'ALTER TABLE <имя таблицы> AUTO_INCREMENT=0');Ответ 3
У меня ни один из этих способов не работает. Даже Truncate не обнуляет счетчик. Нашел выход: Заходим непосредственно в phpMyAdmin, заходим в таблицу. Там в меню заходим в операции и там во втором столбце(Table options(место, где меняет название таблицы, кодировку и тд.)) Auto_increment меняем на 1 в ручную. И все шикарно наботает. Версия phpMyAdmin 4.6.3.Ответ 4
Если у вас есть данные в таблице, то вы не можете сбросить AUTO_INCREMENT. Потому что могут быть коллизии, полностью одинаковые строки. Вы можете удалить столбец с AI, а потом создать заново. Если же таблица пуста, и первый элемент идет не с единицы, а с другого, то самый просто способ это использовать WorkbenchОтвет 5
TRUNCATEОчищает таблицу, но так же сбрасывает счётчик.
Комментариев нет:
Отправить комментарий