![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обновления
Xim © (2004-04-09 17:17:00)Уважаемые мастера, пробую разобраться с Firebird.
Вопрос такой - есть 2 табл: T1- ключ по р1, у T2 тоже есть это поле р1, по нему строится FOREIGN KEY. У Т1 - триггер на обновление before update.
Когда я в IBExpert пытаюсь менять значение ключевого поля (не совпадает с оставшимися знач-ми)получаю ошибку:
violation of FOREGIN KEY constraint "".
violation of FOREGIN KEY constraint "FK_T2_T1" on table "T1".
XanderMan (2004-04-09 20:51:00) [1]Использовать при создании внешнего ключа каскадное обновление:
alter table TABLE1
add constraint FK_
foreign key (CODE)
references TABLE2(CODE)
on delete CASCADE
on update CASCADE
С наилучшими пожеланиями
Desdechado (2004-04-09 18:26:00) [2]если наименование - ключевое поле, то в библиотеку читать правила нормализации
если не ключевое. то меняешь наименование, а все остальное остается
Xim (2004-04-09 17:31:00) [3]Когда пытаюсь изменять значение в подчиненной таблице - та же ошибка.
Xim (2004-04-09 17:24:00) [4]А если нужно наоборот - изменить наименование, чтобы изменить все записи с подчиненной таблице - это можно реализовать?
Desdechado (2004-04-09 17:20:00) [5]дык, у тебя на эту запись ссылается другая таблица, как же ты хочешь менять? меняй тогда в подчиненной сначала, а потом в главной