CREATE OR REPLACE FUNCTION copy_name() RETURNS TRIGGER AS $BODY$ BEGIN UPDATE sayit_users SET screen_name=NEW.name WHERE user_id=NEW.user_id; RETURN new; END; $BODY$ language plpgsql; CREATE TRIGGER update_name_trigger AFTER INSERT OR UPDATE OF name ON sayit_users FOR EACH ROW EXECUTE PROCEDURE copy_name();