Thera is trigger in PostgreSQL 8.4:
CREATE OR REPLACE FUNCTION updateMarkers()
RETURNS trigger AS
$$
BEGIN
IF NEW.status='Новый' THEN
UPDATE markers SET statusId=0;
RETURN NEW;
ELSE IF NEW.status='В работе' THEN
UPDATE markers SET statusId=2;
RETURN NEW;
ELSE IF NEW.status='Завершен' THEN
UPDATE markers SET statusId=3;
RETURN NEW;
ESLE
UPDATE markers SET statusId=4;
RETURN NEW;
END IF;
END;
$$
LANGUAGE plpgsql;
And i get syntax error in ESLE line.
Whats can be wrong?
You have written ESLE instead of ELSE....
Your new query should be like this:
CREATE OR REPLACE FUNCTION updateMarkers()
RETURNS trigger AS
$$
BEGIN
IF NEW.status='Новый' THEN
UPDATE markers SET statusId=0;
RETURN NEW;
ELSEIF NEW.status='В работе' THEN
UPDATE markers SET statusId=2;
RETURN NEW;
ELSEIF NEW.status='Завершен' THEN
UPDATE markers SET statusId=3;
RETURN NEW;
ELSE
UPDATE markers SET statusId=4;
RETURN NEW;
END IF;
END;
$$
LANGUAGE plpgsql;
@edit: ELSE IF need to be together:ELSEIF
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With