[pgsql-jp: 29063] Updateトリガ起動時に、Update対象のカラムを判定したい。
Iso, Toshitaka
Toshitaka.Iso @ hp.com
2003年 2月 14日 (金) 19:53:47 JST
こんばんは。Updateトリガ起動時のUpdate対象のカラムを
判定する方法についてお教え下さい。
現状以下のようなテーブルに対してUpdateトリガを作成しています。
【テーブルHoge】
カラム1 varchar(10)
カラム2 char(8)
登録者 varchar(20) Default current_user
登録日 timestamp Default current_timestamp
変更者 varchar(20) Default current_user
変更日 timestamp Default current_timestamp
Update時に、変更者、変更日が明示的に指定されていた場合は、
その値を投入し、明示的に指定されていない場合は、トリガで
現在のユーザと時間を変更者、変更日に入れたいと考えています。
【明示的に変更者、変更日の指定なし】
Update Hoge set カラム2='xxx';
→ トリガで現在の日付、ユーザを変更日、変更者にセット
【明示的に変更者、変更日の指定あり】
Update Hoge set カラム2='xxx',変更者='A', 変更日='2003-03-22';
→ Update文の値をセット
という処理をしたいと思っています。
トリガの中で、update対象のカラムがどれであるかという判定を行う場合、
どのような処理で実現可能なのかご存知のかたがいらしたら、ぜひとも
ご教授いただけたらと思っています。
以上です。
pgsql-jp メーリングリストの案内