Форум сайта python.su
Здравствуйте!
Возник такой вопрос. Есть модель, в ней поле id явно не прописано, но по факту создаётся.
Если через Python/Django/Формы_на_HTML_странице добавлять записи, то работает счётчик, номер id увеличивается.
Но пришлось воспользоваться другими средствами для копирования/восстановления всей базы. У меня это Postgres, базы я копировал через pgAdmin3.
Теперь у меня 15000 записей в таблице, но добавление записи через Django добавляет запись с маленьким номером (в данном случае 38), естественно что-то затирая при этом.
Как мне указать в базе или в Django, какие номера теперь должны присваиваться?
Офлайн
StriverДа бростье, INSERT запрос не может ничего затирать. Откуда вы взяли, что что-то затирается?
естественно что-то затирая при этом.
Офлайн
Извиняюсь, специально вручную через командную строку сейчас попробовал, затирания действительно не происходит.
Выпадает ошибка:
django.db.utils.IntegrityError: duplicate key value violates unique constraint "base1_model1_pkey" DETAIL: Key (id)=(2) already exists.
Отредактировано Striver (Июнь 6, 2017 16:47:38)
Офлайн
Сам спросил, сам себе отвечаю.
В Postgres имеются некие “Последовательности”. Там прописаны текущие номера id. В pgAdmin3 их можно исправлять вручную.
Офлайн
Офлайн