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

Подскажите как написать триггер...   Найти похожие ветки 

← →
ixen   (2010-10-19 09:54) [0]

Здравствуйте! Я в синтаксисе триггеров не силен. Но понадобилось сделать следующее: База Firebird. Есть родительская таблица и дочерняя. Связь один ко многим. Необходимо подсчитать сумму по определенному столбцу дочерней таблицы и в писать ее в поле родительской... Соответственно при изменении строк дочерней таблицы чтобы сумма автоматически пересчитывалась. Я так понял нужно создать триггер в дочерней таблице. Напсисал вот это:

AS
begin
  new.summ=new.kolvo * new.price;
  docs.summ=select sum(moves.summ) from moves where moves.doc_id=:docs.id;
end


где docs - родительская таблица, moves - дочерняя...
конечно же при компиляции выходит ошибка... подскажите как правильно записать этот триггер.


← →
sniknik ©   (2010-10-19 10:02) [1]

> подскажите как правильно записать этот триггер.
правильно его не писать... т.к. это будет куча лишней работы тригера для изменения значений которые и без этого легко получить, и только в тот момент когда они реально нужны.


← →
sniknik ©   (2010-10-19 10:04) [2]

т.е. то, что ты сейчас пытаешься делать, это готовишь почву для будущего - "ну и отстой этот ваш Firebird, тормозит на ровном месте не по детцки".


← →
Anatoly Podgoretsky ©   (2010-10-19 11:14) [3]

Правильно обращаться в соответствующий форум. Здесь форумы по Дельфи.


← →
ixen   (2010-10-19 11:23) [4]

> Правильно обращаться в соответствующий форум. Здесь форумы
> по Дельфи.

дык я программу в Делфи пишу...))))))


> правильно его не писать...

спасибо за совет..убрал я этот тригер и считаю эти суммы в коде программы...


← →
Anatoly Podgoretsky ©   (2010-10-19 11:47) [5]

> ixen  (19.10.2010 11:23:04)  [4]

Классика "программа на Дельфи"



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

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



Память: 0.46 MB
Время: 0.005 c
15-1286185224
картман
2010-10-04 13:40
2011.01.16
впн через впн


15-1285705757
Юрий
2010-09-29 00:29
2011.01.16
С днем рождения ! 29 сентября 2010 среда


15-1285947386
Дмитрий Тимохов
2010-10-01 19:36
2011.01.16
Создание и запись образов CD из командной строки


15-1285648858
И. Павел
2010-09-28 08:40
2011.01.16
Go to Ленин. Access denied?


2-1287647224
mfender
2010-10-21 11:47
2011.01.16
ADODataSet. Ошибка неизвестного типа




   Наверх