Вниз
Скачать: CL | DM;

IB (ссылочная целостность)   Найти похожие ветки 

← →
whiteman   (2002-07-16 10:29) [0]

Мастера, кто поможет?
Есть 2 таблицы (InterBase) :
1) T1 ( ID_T1, N_T1 )
2) T2 ( ID_T2, N_T2, ID_T1).
Делаю оператор:
ALTER TABLE T2
ADD FOREIGN KEY(ID_T1) REFERENCES T1.

Почему при удалении данных из T1 удаляются
подчиненные им данные в T2, причем без
всякой ругани. Или ссылочная целостность
в IB работает иначе, чем, например в Paradox?
И как сделать ее правильно?


← →
Val ©   (2002-07-16 10:38) [1]

ALTER TABLE T2
ADD FOREIGN KEY(ID_T1) REFERENCES T1(ID_T1)


← →
whiteman   (2002-07-16 10:49) [2]

Извините, вначале задал
вопрос с ошибкой. Условия те же.
Вопрос такой:
При удалении данных из Т1, данные
из T2 не удаляются, и, как следствие
из приложения уже не доступны, т.к.
потерян ключ родительской таблицы?
Пробовал по всякому, но нужного
не добился. Посоветуйте!!!


← →
Johnmen ©   (2002-07-16 11:01) [3]

Каскадное удаление должно быть...


← →
Val ©   (2002-07-16 11:08) [4]

ALTER TABLE T2
ADD constraint FK_T2_ID_T1 FOREIGN KEY(ID_T1) REFERENCES T1(ID_T1) on delete cascade;


← →
Desdechado ©   (2002-07-16 12:15) [5]

вообще-то если есть внешний ключ, то нельзя удалить запись на которую он ссылается, если не стоит каскадное удаление.
а вопрос противоречив. нельзя ли сформулировать членораздельно?


← →
whiteman   (2002-07-16 15:06) [6]

Простите, что отнял время!
Нашел ошибку она была совсем в другом.
Все работает. Спасибо всем, кто откликнулся!
Еще раз извините!!!
с уважением, whiteman.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.008 c
4-13846
mxsbnet
2002-05-24 14:51
2002.08.05
Доступ к одному и тому же блоку памяти из 16- и 32-разр. прилож.


1-13647
c0pYc@t
2002-07-23 12:17
2002.08.05
Скрыть форму


1-13637
j_onion
2002-07-23 03:49
2002.08.05
указатель на запись


1-13713
Yuri Btr
2002-07-24 11:24
2002.08.05
Объявление и использование процедур и функций в Object Pascal


1-13619
eruc
2002-07-22 18:08
2002.08.05
Создаем XML-файл




   Наверх