Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.01.16;
Скачать: 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 вся ветка

Текущий архив: 2011.01.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
15-1285532959
Юрий
2010-09-27 00:29
2011.01.16
С днем рождения ! 27 сентября 2010 понедельник


3-1251359321
Vitalts
2009-08-27 11:48
2011.01.16
Сохранение больших объемов данных в файл


15-1280383980
Dennis I. Komarov
2010-07-29 10:13
2011.01.16
DM Chess Tournament II


2-1287893500
Beginner2010
2010-10-24 08:11
2011.01.16
TTreeNodes.AddObject


2-1286258206
alekseyii
2010-10-05 09:56
2011.01.16
ClientSocket получает не полный ответ Help!!!