DB2 Trigger Объяснение - PullRequest
       13

DB2 Trigger Объяснение

1 голос
/ 22 ноября 2011

Эй, я изучаю триггеры в DB2. И я пропустил урок, где мы его изучали, но у меня есть пример проблемы, чтобы понять это:

создайте триггерную программу, которая будет запускать и суммировать значения элемента (QTY * COST / PRICE) при добавлении, изменении или удалении какой-либо записи элемента и итогового значения в вашем файле заказов.

Моя таблица называется "Предметы", а столбцы - [Ordernum, Itemnum, ItemDesc, QTYORD, Date, Cost]

Может ли кто-нибудь объяснить, как вы это делаете? Я попытался посмотреть здесь: http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.sql.ref.doc/doc/r0000931.html но я немного запутался ....

Я знаю, что ты должен делать:

CREATE TRIGGER Total_Item_Values ПОСЛЕ ОБНОВЛЕНИЯ ПО ПУНКТАМ ДЛЯ КАЖДОГО РЯДА

Но после этого я потерялся.

1 Ответ

1 голос
/ 23 ноября 2011

Я фактически закончил тем, что получил это.Вот как это выглядит.

CREATE TRIGGER Total_Item_Values 
   AFTER UPDATE ON ITEMS 
   REFERENCING NEW AS N
   FOR EACH ROW
   MODE DB2ROW

BEGIN ATOMIC
   UPDATE ORDER
   SET DOLLARS = (SELECT SUM(COST*QTYORD) 
   FROM ITEMS I WHERE N.ORDERNUM = I.ORDERNUM
   GROUP BY I.ORDERNUM)
WHERE N.ORDERNUM = O.ORDERNUM;
    END;
...