Temat: Błąd w procedurze, triggerze. Pilne.
Witajcie.
Mam problem z ostatnim zadaniem w moim pierwszym projekcie, czyli triggerem. Całą bazę zrobiłem, wszystko działa, zapytania śmigają. Podaje niżej tworzoną tabelę i procedurę wraz z triggerem do niej. I tu jest problem. Wywala błąd do procedury:
ERROR: syntax error at or near ";"
LINE 10: END;
^
create table magazyn
( ksiazkaID int not null,
ilosc int not null,
opis varchar(50),
CONSTRAINT ksiazki_fk FOREIGN KEY (ksiazkaID) REFERENCES ksiazki(ksiazkaID)
);
CREATE FUNCTION wpis()
RETURNS TRIGGER AS $$
BEGIN
IF NEW.ilosc < 2
THEN INSERT INTO magazyn VALUES (old.klientid, new.ilosc, 'uwaga, kończy się');
IF NEW.ilosc > 20
THEN INSERT INTO magazyn VALUES (old.klientid, new.ilosc, 'ale tego tu jest');
END IF;
RETURN NEW;
END;
$$ LANGUAGE 'plpgsql'
;
CREATE TRIGGER wpis_w_opis
BEFORE UPDATE ON magazyn
FOR EACH ROW PROCEDURE wpis();
Prubowałem juz wszystkiego i nie daje rady. Wygląda na banalny problem ale mnie zmurowało. Proszę o pomoc. Jutro cały projekt muszę wysłać a zostało mi tylko zrobić procedure i triggera. Z góry dziękuje.