Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.23;
Скачать: CL | DM;

Вниз

Можно ли к существующему FOREIGN KEY добавить ON DELEET CASCADE?   Найти похожие ветки 

 
Prohodil Mimo ©   (2005-09-08 12:55) [0]

FB 1.5.2

Можно ли к существующему FOREIGN KEY добавить ON DELEET CASCADE?

ALTER TABLE KOMAND ADD FOREIGN KEY (ID_PAM) REFERENCES PAMATOJ (ID_PAM);

как должен выглядеть запрос?


 
Desdechado ©   (2005-09-08 13:05) [1]

к безымянному (как в примере) вряд ли
к именованному
ALTER TABLE KOMAND
ADD CONSTRAINT FK_KOMAND_PAMATOJ
FOREIGN KEY (ID_PAM) REFERENCES PAMATOJ (ID_PAM);
можно попробовать через системные таблицы


 
Desdechado ©   (2005-09-08 13:08) [2]

RDB$ref_constraints
поле RDB$delete_rule сделать CASCADE
но результат не гарантирую :)


 
Prohodil Mimo ©   (2005-09-08 13:16) [3]

ладно, тогда пересоздам таблицу и все FK к ней, потом данные перезалью.

И попутно ещо вопрос:
можно ли к существуюшему полю добавить DEFAULT ?
через ALTER COLUMN не получилось


 
DSKalugin ©   (2005-09-08 13:21) [4]

ибэксперт для этого пересоздает поле с использованием временного

1
ALTER TABLE ADRESSES ADD IBE$$TEMP_COLUMN
INTEGER DEFAULT  0
2
UPDATE RDB$RELATION_FIELDS F1
SET
F1.RDB$DEFAULT_VALUE  = (SELECT F2.RDB$DEFAULT_VALUE
                        FROM RDB$RELATION_FIELDS F2
                        WHERE (F2.RDB$RELATION_NAME = "ADRESSES") AND
                              (F2.RDB$FIELD_NAME = "IBE$$TEMP_COLUMN")),
F1.RDB$DEFAULT_SOURCE = (SELECT F3.RDB$DEFAULT_SOURCE FROM RDB$RELATION_FIELDS F3
                        WHERE (F3.RDB$RELATION_NAME = "ADRESSES") AND
                              (F3.RDB$FIELD_NAME = "IBE$$TEMP_COLUMN"))
WHERE (F1.RDB$RELATION_NAME = "ADRESSES") AND
     (F1.RDB$FIELD_NAME = "ID_TOWN")
3
ALTER TABLE ADRESSES DROP IBE$$TEMP_COLUMN


 
Val ©   (2005-09-08 13:29) [5]

> Prohodil Mimo ©   (08.09.05 13:16)
корректно удалить текущий констреинт и создать новый с тем же именем но с on delete cascade. причем тут табличные данные-то?


 
Prohodil Mimo ©   (2005-09-08 15:01) [6]

Val ©   (08.09.05 13:29) [5]

naschot dannih ja poshutil... tablica jesho pusta :o)

Spasibo vsem za otveti!



Страницы: 1 вся ветка

Текущий архив: 2005.10.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.046 c
3-1126677194
Ньюб2
2005-09-14 09:53
2005.10.23
зависание FB 1.7.2


5-1103408543
klyonov
2004-12-19 01:22
2005.10.23
Пакеты


2-1127834116
Xav
2005-09-27 19:15
2005.10.23
Filepagesetup


14-1128013321
Kolan
2005-09-29 21:02
2005.10.23
Кто смотрел 9 роту.


6-1117099451
PalPalych
2005-05-26 13:24
2005.10.23
Проверка наличия подключения к Инету