Josh Berkus wrote: > > Andreas, > > > 1) update test set a=0 -> trigger does its work > > 2) update test set a=0, b=1, c=2 -> trigger does nothing > > 3) update test set a=0, b=b, c=c -> trigger does nothing, but content of > > a and b dont change either although touched > > > IF OLD.b=NEW.b will not work, case 3) will falsely execute the trigger > > code. > > I still don't get why you'd want to do this. Can you provide are real-world > example where there is a difference between setting B=B and not updating B?
Setting b=b and not updating it is indeed identical ... at least after the targetlist completion in PostgreSQL. But it is different from b=<b's-old-value>, and the fact that we cannot distinguish between these two (inside the trigger) prevents us from skipping foreign key checks if your fk-values haven't been touched. Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== [EMAIL PROTECTED] # ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly