Сценарий:
DELETE FROM table_x WHERE id not in (1,2,3,4)
Ответ:
обновление или удаление в таблице "table_x" нарушает ограничение внешнего ключа "fk1" в таблице "table_y" ПОДРОБНЕЕ: на ключ (table_x_id)=(7) по-прежнему ссылаются из таблицы "table_y".
- очистил 'table_y' от всех записей
- FK не отображался в списке FK для «table_y»
- полностью удалил таблицу 'table_y'
Мы по-прежнему получаем это сообщение, так что предполагается, что где-то в таблице pg_constraints
есть ложная запись. В поисках ограничения «fk1» мы находим две записи и удаляем их.
Запрос:
delete from pg_constraint where conname = 'fk1'
Теперь мы получаем ЭТУ ошибку:
[Err] ОШИБКА: не удалось выполнить поиск в кэше для ограничения 868152
На данный момент я совершенно уверен, что нам нужно очистить некоторые записи, но не знаю, как - у кого-нибудь есть опыт в этом, который мог бы указать мне правильное направление?
VACUUM
в последнее время? - person Matt Ball   schedule 24.07.2012