Главная страница
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-1125946201
Капа
2005-09-05 22:50
2005.10.23
Уникальность полей одним запросом


6-1120564704
John-123
2005-07-05 15:58
2005.10.23
Отправка сообщения на все компьютеры в локальной сети


1-1128155378
STUDENT_RU
2005-10-01 12:29
2005.10.23
Запуск программы по расписанию


9-1118169324
4ECHOK
2005-06-07 22:35
2005.10.23
А сделайте мне дождь !


2-1127583139
quadronik
2005-09-24 21:32
2005.10.23
Числовое вырожение прописью