Сброс значения auto_increment в PostgreSQL

Если вы получили подобную ошибку:

Unique violation: 7 ERROR:  duplicate key value violates unique constraint "my_table_pkey"
DETAIL:  Key (id)=(12) already exists

это означает, что primary key — поле, то, которое автоинкриментится при добавлении новых строк в БД «сломалось». И не может определить следующий id.
Для данной таблицы можно перезапустить sequence:

ALTER SEQUENCE my_table_id_seq RESTART WITH 13;

Где 13 — это число, с которого должен пойти новый отсчет SERIAL колонки, той, что автоинкриментится.

Поделиться
Отправить
Популярное