Гость
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Компарер баз: создание внешних ключей / 7 сообщений из 7, страница 1 из 1
13.12.2015, 08:22
    #39126578
CyberMax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компарер баз: создание внешних ключей
Александр, для чего при создании внешних ключей делается переконнект после каждого оператора? В старом компарере такого не было.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
ALTER TABLE SYS$LINK$UNIT ADD CONSTRAINT FK_SYS$LINK$UNIT_5 FOREIGN KEY (ID_TYPE_UNIT_GTP) REFERENCES DIR$UNIT$TYPE_UNIT (ID) ON UPDATE CASCADE;

RECONNECT;

ALTER TABLE SYS$LINK$UNIT ADD CONSTRAINT FK_SYS$LINK$UNIT_6 FOREIGN KEY (ID_TYPE_UNIT_BOTTLE) REFERENCES DIR$UNIT$TYPE_UNIT (ID) ON UPDATE CASCADE;

RECONNECT;

ALTER TABLE SYS$LINK$UNIT ADD CONSTRAINT FK_SYS$LINK$UNIT_7 FOREIGN KEY (ID_TYPE_UNIT_CGBU) REFERENCES DIR$UNIT$TYPE_UNIT (ID) ON UPDATE CASCADE;

RECONNECT;

ALTER TABLE SYS$LINK$UNIT ADD CONSTRAINT FK_SYS$LINK$UNIT_8 FOREIGN KEY (ID_TYPE_UNIT_AUTO_GFS) REFERENCES DIR$UNIT$TYPE_UNIT (ID) ON UPDATE CASCADE;

RECONNECT;
...
Рейтинг: 0 / 0
13.12.2015, 08:29
    #39126581
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компарер баз: создание внешних ключей
CyberMaxАлександр, для чего при создании внешних ключей делается переконнект после каждого оператора? В старом компарере такого не было.

Точно не было? Реконнекты как раз тупо из старого компарера и перетащены.
Зачем именно они делаются при создании внешних ключей - я сейчас сказать не могу.
...
Рейтинг: 0 / 0
13.12.2015, 09:52
    #39126598
CyberMax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компарер баз: создание внешних ключей
Проверил на старом IBE. Там реконнект только перед стартом:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
/* Create Foreign Key... */
RECONNECT;

ALTER TABLE BAT$FSA$BATCH ADD CONSTRAINT FK_BAT$FSA$BATCH_CREATOR FOREIGN KEY (ID_CREATOR) REFERENCES DIR$SECURITY$DB_USER (ID) ON UPDATE CASCADE;

ALTER TABLE BAT$FSA$BATCH ADD CONSTRAINT FK_BAT$FSA$BATCH_TSERVICE FOREIGN KEY (ID_TSERVICE) REFERENCES DIR$TSERVICE$TSERVICE (ID) ON UPDATE CASCADE;

ALTER TABLE BAT$FSA$BATCH ADD CONSTRAINT FK_BAT$FSA$BATCH_WORKER_ACCEPT FOREIGN KEY (ID_WORKER_ACCEPT) REFERENCES DIR$TSERVICE$WORKER (ID) ON UPDATE CASCADE;
...
Рейтинг: 0 / 0
13.12.2015, 10:14
    #39126606
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компарер баз: создание внешних ключей
CyberMaxПроверил на старом IBE. Там реконнект только перед стартом:


Понятно. Значит, так и сделаем.
...
Рейтинг: 0 / 0
22.12.2015, 11:25
    #39134247
CyberMax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компарер баз: создание внешних ключей
То же самое при дропе ограничений уникальности:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
/******************************************************************************/
/****                     Dropping unique constraints                      ****/
/******************************************************************************/
RECONNECT;

ALTER TABLE DIR$UNIT$SERVICES_OF_PURPOSE DROP CONSTRAINT UNQ_DIR$UNIT$SERVICES_OF_PURPO;

RECONNECT;

ALTER TABLE DIR$UNIT$TYPE_UNIT_SERVICE DROP CONSTRAINT UNQ_DIR$UNIT$TYPE_UNIT_SERVICE;

RECONNECT;

ALTER TABLE DOC$LAWSUIT$WRIT_OF_EXEC DROP CONSTRAINT UNQ_DOC$LAWSUIT$WRIT_OF_EXEC_NU;

RECONNECT;
...
Рейтинг: 0 / 0
22.12.2015, 11:26
    #39134250
CyberMax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компарер баз: создание внешних ключей
И здесь:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
/******************************************************************************/
/****                   Dropping primary key constraints                   ****/
/******************************************************************************/
RECONNECT;

ALTER TABLE DIR$CS$KIND_WORK_USED_MATERIAL DROP CONSTRAINT PK_DIR$CS$KIND_WORK_USED_MATERI;

RECONNECT;

ALTER TABLE DIR$LAWSUIT$DECISION_FOR_PERIOD DROP CONSTRAINT PK_DIR$LAWSUIT$DECISION_FOR_PER;

RECONNECT;

ALTER TABLE DIR$LAWSUIT$REASON_COURT_DECISI DROP CONSTRAINT PK_DIR$LAWSUIT$REASON_COURT_DES;

RECONNECT;

ALTER TABLE DIR$SERVICE$STATE_SERVICE DROP CONSTRAINT PK_DIR$SERVICE$STATE_SERVICE;

RECONNECT;
...
Рейтинг: 0 / 0
22.12.2015, 16:08
    #39134773
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Компарер баз: создание внешних ключей
Исправил.
...
Рейтинг: 0 / 0
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Компарер баз: создание внешних ключей / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]