Did you insert a row into table2? What happens if there is no row in table
1 where id = code (of the newly inserted row in table2). Seems to me you
many need to consider expanding increment_value() to check table1 to see if
code exists. If not insert a new value, else update.
-----Original Message-----
From: Ramiro Arenas Ramirez [SMTP:ramiroa@coordinadora.com.co]
Sent: Thursday, February 01, 2001 2:48 PM
To: pgsql-sql@postgresql.org
Subject: how to create this trigger?
I need to create a trigger that increment a value in a column
of table1 where a row is inserted in table 2
I have tried whit this but it just does nothing.
CREATE FUNCTION increment_value () RETURNS opaque AS
'DECLARE code int4; BEGIN code := new.code; UPDATE table1 SET value = value + 1 WHERE id = code;
RETURN NEW;
END;' LANGUAGE 'plpgsql';
CREATE TRIGGER insert_on_table2 BEFORE INSERT ON table2FOR EACH ROW EXECUTE PROCEDURE increment_value();
Can you help me?