Есть в БД поле с настройкой unique=True . Если попытаться сделать запись в БД с одинаковым значением по этому полю, то вылетает ожидаемое исключение psycopg2.IntegrityError. Но беда в том, что после этого слетает и подключение к БД. Обработка исключения через блок try ... except, не даёт никакого эффекта - вслед за обработанным исключением psycopg2.IntegrityError, вылетает другое psycopg2.InternalError, т.е. отсутствует подключение.

На данный момент, я перед записью данных в БД, сначала проверяю наличие похожей записи там, и если такой записи нет, то вношу данные в БД. Можно ли это решить как-то по другому?

Спасибо!