Форум: "Базы";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];
ВнизУмный триггер в InterBase Найти похожие ветки
← →
RomanH © (2006-04-07 15:30) [0]Здраствуйте мастера. Существует 2 таблицы Men и TMen
MenID MFam | TMenID TMFam TMAction
00001 AAAA | 10001 BBBBB 1
Пишу такой триггер чтобы добавить запись в таблицу Men необходимо сначало проверить TMenID, если он меньше 10 000,
то New.MenID=Gen_ID(Gen_Men,1):create trigger bef_ins_men for men
active before insert
as
declare variable men_ID integer;
declare variable Men_action integer;
begin
select TMenID,TMAction from MenT where TMenID<10000 into :men_ID,Men_action;
if (:men_id<10000) then new.menid=gen_id(gen_men,1);
end
Ни как не соображу
← →
Johnmen © (2006-04-07 16:24) [1]Тут соображать надо после прочтения документации...
← →
Desdechado © (2006-04-07 16:25) [2]1. Зачем выбирать 2 поля, чтоб сравнивать потом одно?
2. По условию может оказаться много записей, то будет ошибка multiple rows in singleton select. Может, нужно проверять Max(TMenID) ?
3. if (:men_id<10000) - здесь двоеточие не надо
4. into :men_ID,Men_action; - а вот здесь нужно к каждой переменной
PS from MenT- круто завернул
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.05.28;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.01 c