[pgsql-jp: 30115] トリガ作成でのエラー

sorako yamamoto sorako_y @ hotmail.com
2003年 6月 3日 (火) 11:31:05 JST


こんにちは。いつもお世話になっております。

現在、
出勤時刻	TIMESTAMP
退勤時刻	TIMESTAMP
休憩時間	INTERVAL
実働時間	INTERVAL


を持っている、tbl_time_recorderstというテーブルがあり、


このテーブルがINSERT/UPDATE された場合に
退勤時刻-出勤時刻-休憩時間で実働時間を求めるトリガを作成したいと考えていま
す。

********************** トリガ *********************************
CREATE FUNCTION tbl_time_recorders_trigger() RETURNS OPAQUE
AS '

BEGIN

	IF NEW.in_time ISNULL OR NEW.out_time ISNULL OR NEW.break_ours ISNULL THEN
		-- 何もしない
		RETURN NULL;
	END IF ;


	NEW.working_ours := NEW.out_time - NEW.in_time - NEW.break_ours ;

	RETURN NEW ;


END ;
' LANGUAGE 'plpgsql' ;


CREATE TRIGGER trig_tbl_time_recorders
AFTER INSERT OR UPDATE ON tbl_time_recorders
FOR EACH STATEMENT 
EXECUTE PROCEDURE tbl_time_recorders_trigger();
****************************************************************


上記ファイルを読み込むと、

CreateTrigger: STATEMENT triggers are unimplemented, yet

というエラーが出てしまいました。
ためしに、UPDATE INSERTをかけてもやはりトリガ作成されていないようです。
なにか設定に問題があるのでしょうか。

Googleで調べましたが、'plpgsql'のトリガの例って以外に少ないですね…
BEFORE INSERT等でINSERT前に入力制限をかける等のサンプルは
書籍でも少し見つけることができたのですが、AFTER後に他カラムをいじるみたいな
物が
見つけられず苦労しています。


たびたびの初歩的質問で本当に恐縮ですが、
アドバイスいただきたいです。よろしくお願い致します。

_________________________________________________________________
ウイルスメール、迷惑メール対策なら MSN Hotmail  http://www.hotmail.com/  




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