otoz mam stworzyc 3 triggery do
CREATE TABLE zamowienie( bid INTEGER NOT NULL PRIMARY KEY, bestelldatum DATE, suma DECIMAL (10,2), klient INTEGER, pracownik INTEGER ON DELETE SET NULL, ); CREATE TABLE zawiera( pid INTEGER NOT NULL, bid INTEGER NOT NULL, liczba INTEGER CHECK (liczba >= 0), PRIMARY KEY (pid,bid), FOREIGN KEY(pid) REFERENCES produkt(pid), FOREIGN KEY(bid) REFERENCES zamowienie(bid), );
w ktorych bedzie w zamowieniu aktualizowana suma, odpowiednio dla insert, delete orz update przypadku
(w zawiera musze wziac tylko liczbe pod uwage)
CREATE TRIGGER ins_zawiera AFTER INSERT ON zawiera REFERENCING NEW ROW AS n FOR EACH ROW UPDATE zamowienie SET suma = (suma + 1) WHERE n.liczba = bid CREATE TRIGGER del_zawiera AFTER DELETE ON zawiera REFERENCING OLD ROW AS o FOR EACH ROW UPDATE zamowienie SET suma = (suma - 1) WHERE o.liczba = bid CREATE TRIGGER upd_zawiera BEFORE UPDATE OF liczba ON zawiera FOR EACH ROW BEGIN
no i moj problem tkwi w update_zawiera, nie wiem zbytnio jak to ogarnac,
z gory dziekuej za pomoc