Справочник · ошибки Python

IntegrityError

База данных отказалась сохранять запись: нарушено правило таблицы — например, такой ключ уже есть.

Python пишет ошибку в последней строке сообщения: сначала название, после двоеточия — подробности. Найди своё сообщение ниже — рядом объяснение простыми словами и что исправить.

Такое значение уже есть

IntegrityError: UNIQUE constraint failed: users.email
Что случилось
Значение в столбце users.email должно быть уникальным, а такое уже записано.
Почему так бывает
У первичного ключа не бывает одинаковых значений.
Как исправить
Возьми другое значение или не указывай его: номер для первичного ключа поставится сам.

Разбираем в уроке 14.3 «Меняем: INSERT, UPDATE, DELETE».

Значение обязательно

IntegrityError: NOT NULL constraint failed: pets.name
Что случилось
В столбец pets.name нужно записать значение.
Почему так бывает
Этот столбец нельзя оставлять пустым.
Как исправить
Добавь значение для этого столбца в команду.

Разбираем в уроке 14.3 «Меняем: INSERT, UPDATE, DELETE».

Нет такой связи

IntegrityError: FOREIGN KEY constraint failed
Что случилось
Запись ссылается на строку, которой нет в другой таблице.
Почему так бывает
Внешний ключ должен указывать на существующий номер в главной таблице.
Как исправить
Сначала добавь нужную строку в главную таблицу или проверь номер.

Разбираем в уроке 14.4 «Связи между таблицами».

Другие ошибки