Привет!

У нас интересная ситуация. FB2 12128. Локально поменяли правила у FK ON UPDATE 
с NO ACTION на CASCADE, залили изменения компарером и при попытке модификации 
ключа в мастер-таблице получаем сообщение violation of FOREIGN KEY и т.п. 
словно у нас стоит ON UPDATE NO ACTION.

Смотрим экспертом и хаммером в ограничения таблицы - везде каскад стоит. После 
перекомпилляции ограничения экспертом (замены на NO ACTION и потом обратно на 
CASCADE) всё начинает работать правильно.

После работы компарера база пережила B/R !!!

Мы только что проверили скрипты, которые генерит компарер - он нагенерил такое:

SET AUTODDL ON;

ALTER TABLE "ConfigurableBanners" DROP CONSTRAINT FK_CONFIGURABLEBANNER_1;

RECONNECT;

/* Create Foreign Key... */
RECONNECT;

ALTER TABLE "ConfigurableBanners" ADD CONSTRAINT FK_CONFIGURABLEBANNER_1 FOREIGN KEY 
("CollectionId") REFERENCES "Collections" ("Id") ON UPDATE CASCADE ON DELETE SET NULL;


Что это может быть?

Ответить