sample_func() とTabl「sample.sample」

testdb=# \d sample
               Table "sample.sample"
 Column |  Type   | Collation | Nullable | Default 
--------+---------+-----------+----------+---------
 id     | integer |           |          | 
 name   | text    |           |          | 
 date   | date    |           |          | 
testdb=# SELECT * FROM sample;
 id | name |    date    
----+------+------------
  1 | 木村 | 2017-11-05
  2 | 田中 | 2017-11-07
  3 | 小林 | 2018-01-28
  4 | 沢田 | 2018-02-02
(4 rows)
testdb=# CREATE FUNCTION sample_func() RETURNS TRIGGER AS $$
testdb$# BEGIN
testdb$# RETURN NULL;
testdb$# END;
testdb$# $$ LANGUAGE plpgsql;
CREATE FUNCTION
testdb=# CREATE TRIGGER sample_trg AFTER INSERT ON sample FOR ROW EXECUTE PROCEDURE sample_func();
CREATE TRIGGER
testdb=# INSERT INTO sample VALUES(5, '町野', '2018-05-05');
INSERT 0 1
=# SELECT * FROM sample;
 id | name |    date    
----+------+------------
  1 | 木村 | 2017-11-05
  2 | 田中 | 2017-11-07
  3 | 小林 | 2018-01-28
  4 | 沢田 | 2018-02-02
  5 | 町野 | 2018-05-05
(5 rows)

〇影響範囲
・FOR [EACH] ROW
対象テーブルの行ごとの更新に対してトリガーを実行します。

・FOR [EACH] STATEMENT(デフォルト)
対象テーブルのSQLごとの更新に対してトリガーを実行します。

この記事が気に入ったらサポートをしてみませんか?