powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как установить max_id для каждой таблицы по существующим данным
10 сообщений из 10, страница 1 из 1
Как установить max_id для каждой таблицы по существующим данным
    #39610510
mstdmstd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет,

В posgresql я писал
Код: plsql
1.
SELECT setval('pd_product_bookmark_id_seq', COALESCE((SELECT MAX(id)+1 FROM pd_product_bookmark), 1), false);


чтобы установить max_id для каждой таблицы по существующим данным

Можно ли такое сделать для mysql и как ?

Спасибо!
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39610539
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если таблицы InnoDB, то достаточно рестартовать сервис MySQL.
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39610554
mstdmstd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да таблицы InnoDB
Вы имеет в виду в консоле выполнить
Код: plaintext
sudo service apache2 restart

?

Я так попробовал :
удалил изх таблицы все данные с id> 2
перезапустил сервер
и следующзая созданная строка имела id=58
Сорри если изначальтно неправильно выразился - я имел в виду установить autoincrment счетчик для таблицы...
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39610558
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Примерно так, только сервис mysql, а не апач.
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39610565
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для отдельных таблиц можно через alter table, но ссылку сейчас нет возможности найти.
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39610896
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://dev.mysql.com/doc/refman/5.7/en/alter-table.html To reset the current auto-increment value:
Код: sql
1.
ALTER TABLE t1 AUTO_INCREMENT = 13;

You cannot reset the counter to a value less than or equal to the value that is currently in use. For both InnoDB and MyISAM, if the value is less than or equal to the maximum value currently in the AUTO_INCREMENT column, the value is reset to the current maximum AUTO_INCREMENT column value plus one.Т.е. можно ставить 1.
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39610988
mstdmstd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А такой синтаксис
Код: sql
1.
ALTER TABLE  tsk_tasks  AUTO_INCREMENT = ( select max(id)+1 from tsk_tasks );


он не пропускает ?
Я сколько не пробовал ошибка синтаксиса где select...
там есть некторые инициализирующие данные которые нужно оставить...
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39610992
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mstdmstdА такой синтаксис
он не пропускает ?
Нет. Аргумент автоинкремента - это непреобразуемый литерал.
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39611002
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mstdmstd,

А зачем так мудрить?
Указывайте 1.
...
Рейтинг: 0 / 0
Как установить max_id для каждой таблицы по существующим данным
    #39611058
mstdmstd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft, Да 1 решение
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как установить max_id для каждой таблицы по существующим данным
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]