I just tried the trigger function from:
http://developer.postgresql.org/docs/postgres/plpgsql-trigger.html
(You can read the sql command on the bottom of this message.)
When inserting into emp table i got error: --> parse error near ""
I just wondering if any of you have the same probelem;
The plpgsql language was just created with createlang plqpsql [dbname]
Thank you
Yudie
Sample Code:
CREATE TABLE emp ( empname text, salary integer, last_date timestamp, last_user text );
CREATE FUNCTION emp_stamp () RETURNS OPAQUE AS ' BEGIN -- Check that empname and salary are given
IF NEW.empname ISNULL THEN RAISE EXCEPTION ''empname cannot be NULL value''; END IF;
IF NEW.salary ISNULL THEN RAISE EXCEPTION ''% cannot have NULL salary'', NEW.empname; END
IF;
-- Who works for us when she must pay for? IF NEW.salary < 0 THEN RAISE EXCEPTION
''%cannot have a negative salary'',
NEW.empname; END IF;
-- Remember who changed the payroll when NEW.last_date := ''now''; NEW.last_user :=
current_user; RETURN NEW; END; ' LANGUAGE 'plpgsql';
CREATE TRIGGER emp_stamp BEFORE INSERT OR UPDATE ON emp FOR EACH ROW EXECUTE PROCEDURE emp_stamp();