CREATE FUNCTION updatePop() RETURNS TRIGGER AS $updatePopulation$
DECLARE
name1 varchar(30);
name2 varchar(30);
BEGIN
IF (TG_OP = 'INSERT') THEN
name1 = NEW.name;
name2 = NEW.province;
UPDATE Place
SET population = population + 1
WHERE name1 = Place.name AND name2 = Place.province;
END IF;
RETURN NULL;
END;
$updatePopulation$ LANGUAGE plpgsql;
CREATE TRIGGER updatePopulation
AFTER INSERT ON LivesIn
FOR EACH ROW
EXECUTE PROCEDURE updatePop();
updatePop()이라는 함수를 먼저 정의한 뒤,
LivesIn에 INSERT가 발생할 때 마다 해당 함수를 실행하게 하는 SQL이다.
ref : https://stackoverflow.com/questions/15238082/postgresql-creating-a-trigger