[pgsql-jp: 33877] Re: 挿入・更新時のTimeStamp 自動挿入
OHTSUKA Ko-hei
techml @ saesparam.com
2004年 8月 14日 (土) 13:08:16 JST
大塚です。
Yutaka tanida wrote:
>>MySQLでは、たとえばセッションテーブル等で挿入・更新時に
>>タイムスタンプを更新する等は、DBが勝手にやってくれるの
>>ですが、
>
> 私がMySQLで最近ものすごく驚いた機能の一つですね。この機能のおかげでMySQL
> のTimestamp型はSQLのそれ(というかMySQL以外のRDBMSのほとんど?)と互換性
> がありません。
MySQLの方がおかしいわけですね。
自分が慣れてきて意外と便利だったので、そっちをデフォルトに
捉えてしまってました。
> 1) 更新処理
> 2) トリガー発生
> 3) last_assessを更新する処理
> 4) 2)に戻る
なるほど、そりゃ止まりますね。
トリガの中では、トリガ対象のテーブルはいじってはいけないと
言う事でしょうか。
そういう時はルールを使うのかな?
いや、ルールでも同じか…。
> 一般には、insertの時は今やられているとおり、updateのときも更新時刻を設定
> するだけです。
>
> update ... set .., last_access=now() ,....
あ、そうか、それだけの事ですね。
DB側の設定でなんとかしないといけない、できるはずだと自分が
MySQL脳になってしまっていました。
SQL文の方をいじる事が頭から飛んでた…。
ありがとうございました。
pgsql-jp メーリングリストの案内