All pastes #485552 Raw Edit

Anonymous

public sql v1 · immutable
·published 2007-05-13 02:24 UTC
rendered paste body
    CREATE TRIGGER reduceSalary    BEFORE UPDATE OF salary ON person    FOR EACH ROW    WHEN (NEW.salary < OLD.salary)    DECLARE       lessMoney EXCEPTION;    BEGIN       RAISE lessMoney;       EXCEPTION         WHEN lessMoney THEN           raise_application_error(-20001,'Attempt to reduce salary. Rejected!');    END;CREATE FUNCTION reduce_salary() RETURNS TRIGGER AS $reduceSalary$BEGIN	IF NEW.salary < OLD.salary THEN		RAISE EXCEPTION 'Salary cannot be reduced';	END IF;	RETURN NEW;END;$reduceSalary$ LANGUAGE plpgsql;CREATE TRIGGER reduceSalaryBEFORE UPDATE ON personFOR EACH ROW EXECUTE PROCEDURE reduce_salary();