Witam,

mam dwa problemy związane z triggerami, a mianowicie:
1.
  1. DELIMITER $$
  2. CREATE TRIGGER attractions_bi BEFORE INSERT ON attractions
  3. FOR EACH ROW BEGIN
  4. #UPDATE cities SET attractions = (attractions+1) WHERE city_id = NEW.city_id;
  5. UPDATE statistics SET attractions = (attractions+1);
  6. END;
  7. $$
  8. DELIMITER ;


jak widać powyżej jedna linijka jest zakomentowana gdyż nie wiem jak zrobić warunek działający na zasadzie: jeżeli city_id > 0 to zrób UPDATE cities SET attractions = (attractions+1) WHERE city_id = NEW.city_id;


2. Moim drugim problemem jest napisanie do powyższego kodu, wyzwalacza działającego po usunięciu wpisu z tabeli attractions, który wykona: UPDATE statistics SET commentaries = (commentaries-1);

jeśli tworzę w drugim wypadku drugi raz: CREATE TRIGGER attractions_bi2 BEFORE DELETE ON attractions to wywala mi błąd.

Mógłby mi ktoś pomoc ?