Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / PostgreSQL |
![]() ![]() |
sstatistic Member Откуда: Сообщений: 117 |
Доброй ночи. Есть таблица1: t1 Есть таблица2: t2 У t2 есть внешний ключ ...ADD CONSTRAINT fk_t2 FOREIGN KEY (t1_id) REFERENCES t1(id) ON DELETE CASCADE; |
2 фев 21, 23:16 [22273525] Ответить | Цитировать Сообщить модератору |
sstatistic Member Откуда: Сообщений: 117 |
При попытке перенести БД с помощью дампа при восстановлении ошибка:DETAIL: Ключ (t1_id)=(114565488) отсутствует в таблице "t1". и констрэйнт не создается. |
2 фев 21, 23:17 [22273528] Ответить | Цитировать Сообщить модератору |
sstatistic Member Откуда: Сообщений: 117 |
Запросом проверил, действиетельно в рабочей БД Ключ (t1_id)=(114565488) отсутствует в таблице "t1". при этом в t2 он имеется. И реиндекс и вакуум фулл таблицы t2 проходят без ошибок. Как такое может быть? И как перенести эту БД дампом? |
2 фев 21, 23:19 [22273530] Ответить | Цитировать Сообщить модератору |
Maxim Boguk Member Откуда: Melbourne, Австралия Сообщений: 4571 |
sstatistic,
удалить (t1_id)=(114565488) из t2
есть больше одного метода как от superuser сломать валидность fk )) -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru |
||||
2 фев 21, 23:21 [22273531] Ответить | Цитировать Сообщить модератору |
sstatistic Member Откуда: Сообщений: 117 |
Удалил. Перенслось. Спасибо ) Ну а на счет больше одного, на ум только приходит отключение по питанию... а какие еще варианты могут быть? |
||||||||
3 фев 21, 00:29 [22273545] Ответить | Цитировать Сообщить модератору |
Maxim Boguk Member Откуда: Melbourne, Австралия Сообщений: 4571 |
1)set session_replication_role to replica;
2)alter table t2 DISABLE TRIGGER ALL;
-- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru |
||||||||
3 фев 21, 00:37 [22273547] Ответить | Цитировать Сообщить модератору |
sstatistic Member Откуда: Сообщений: 117 |
Вот это да!!! Про реплику вообще не мог даже подумать!!! |
||||||||||||
3 фев 21, 01:01 [22273561] Ответить | Цитировать Сообщить модератору |
Все форумы / PostgreSQL | ![]() |