[pgsql-jp: 36619] トリガで値が代入されない

西村 篤史 a2c @ lets-heart.co.jp
2006年 1月 14日 (土) 14:20:37 JST


西村@和歌山市です。
# PostgreSQL 8.0.3
# RedHat9

 テーブルにレコードが 入ったり更新されたら、そのテーブルの
更新日付フィールドに当日の日付を入れるトリガとファンクションを
作りました。

しかし、更新日付フィールドには何も値が入りません。
ヘルプを見ながら作ったのですが、一体どこがわるいのか判りません。
下記にソースを付けますので、ご指摘があればご教授の程
宜しくお願いいたします。

-- テーブル
create table t_test(
 f1 int4,
 f2 char(16) ,
 f3 date ,
 f4 bool ,
 f5 bool ,
 f6 timestamp  -- 
);

-- ファンクション
create function test_func() returns trigger as '
begin
  new.f6 = current_timestamp;
  return new;
end;
' language 'plpgsql';

※戻り値を OPAQUE にしたのですが、WARNING が出て
勝手にtrigger になります

-- トリガ
create trigger trg_test after insert or update on t_test
for each row
 execute procedure test_func();





pgsql-jp メーリングリストの案内