1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
CREATE TABLE test
(
id character varying(32) NOT NULL,
"text" character varying(100),
test character varying(32),
CONSTRAINT pk_test PRIMARY KEY (id)
)
WITH (OIDS=FALSE);
ALTER TABLE test OWNER TO dfdev;
CREATE TRIGGER test_trg
AFTER INSERT OR UPDATE OR DELETE
ON test
FOR EACH ROW
EXECUTE PROCEDURE test_trg();
CREATE OR REPLACE FUNCTION test_trg()
RETURNS trigger AS
$BODY$ DECLARE
BEGIN
IF TG_OP = 'INSERT' THEN
new.test := 'INSERT';
END IF;
IF TG_OP = 'UPDATE' THEN
new.test := 'UPDATE';
END IF;
IF TG_OP = 'DELETE' THEN RETURN OLD; ELSE RETURN NEW; END IF;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;
ALTER FUNCTION test_trg() OWNER TO dfdev; |
Partager