no-style

Разное SQL


Содержание

На данной странице буду выкладывать всякие дополнительные ништяки, которые затрагивают тему SQL, но не вошли ни в 1 из разделов.

Периодически этот список будет пополняться







Пересчет auto_increment

Иногда, добавляя много данных в базу с индексом uniq из за дублей информации, которая не попадает в базу - пропускаются id'шники.Они перестают идти по порядку. Чтобы поправить этот момент можно использовать этот магический способ.


Убираем инкремент во всей таблице у столбца id.

ALTER TABLE `db_name`.`table_name` MODIFY `id` INT(11);

Убираем первичный ключ.

ALTER TABLE `db_name`.`table_name` DROP PRIMARY KEY;

Обнуляем значения всех полей у столбца id.

UPDATE `db_name`.`table_name` SET `id`='0';

Устанавливаем значение инкремента.

ALTER TABLE `db_name`.`table_name` AUTO_INCREMENT=1;

Включаем обратно инкремент.

ALTER TABLE `db_name`.`table_name` MODIFY `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY;

Комментарии