Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ТРИГЕР [Firebird]


6ruse ©   (2010-09-03 11:48:00) 

Доброго времени суток! Уважаемые посоветуйте как правельно написать тригер который срабатывает перед удалением записи из таблицы. Задача тирега проверить есть ли во второй таблице ссылка на данные которые удаляются и если есть то вывесли исключение. я пишу так
CREATE OR ALTER TRIGGER TBL_BOOK_BD FOR TBL_BOOK
ACTIVE BEFORE DELETE POSITION 0
as
begin
if (not EXISTS(select OLD.ID_BOOK From tbl_vydacha where tbl_vydacha.data_vozvrata = 'null' and old.id_book = tbl_vydacha.id_book  )) then
  exception err_spisanie ;
end.
у меня тригер срабатывает при удалении любой записи из таблицы. С нетерпением жду ответов.


SuperPuperSQL   (2010-10-07 15:13:00) [1]


> >>Уважаемые посоветуйте как правельно написать тригер
>  Правильно надо писать "триггер".

Правельно надо писать "правильно"


Правильный$Вася   (2010-10-05 14:11:00) [2]


> Читать теорию о ссылочной целостности (вторичные ключи или
> foreign keys).Они именно для этого и предназначены.

это да, но видимо автор хочет показать осмысленное сообщение, а не типичное на буржуйском

автору:
убрать NOT


Anatoly Podgoretsky   (2010-09-21 09:52:00) [3]

> Ega23  (21.09.2010 08:02:05)  [5]

Ну так тут работать надо, это не пойдеть.


Ega23   (2010-09-21 08:02:00) [4]


> Задача тирега проверить есть ли во второй таблице ссылка
> на данные которые удаляются и если есть то вывесли исключение


Читать теорию о ссылочной целостности (вторичные ключи или foreign keys).
Они именно для этого и предназначены.


Внук   (2010-09-21 00:46:00) [5]

>>Уважаемые посоветуйте как правельно написать тригер
 Правильно надо писать "триггер".


Игорь Шевченко   (2010-09-03 22:16:00) [6]


> есть ли во второй таблице ссылка на данные которые удаляются
> и если есть то вывесли исключение



> if (not EXISTS


Убрать not ?


Сергей М.   (2010-09-03 12:02:00) [7]

> tbl_vydacha.data_vozvrata = 'null'

Интересно, с какой радости поле data_vozvrata сделано текстовым ?


Sergey13   (2010-09-03 11:52:00) [8]

> [0] 6ruse   (03.09.10 11:48)

А просто внешний ключ повесить не пробовал?


Наверх

Титульная страница Поиск, карта сайта Написать письмо