Andreas Pflug wrote:
>
> On Nov 14, Neil wrote:
>
> >>I'd like to implement FOR EACH STATEMENT triggers. AFAICS it shouldn't
> >>be too tricky -- so if there's some show-stopper that prevented it
> >>from being done earlier, let me know now, please :-)
>
> >>Some random notes on the implementation I'm thinking of:
>
> >> - in the function called by a per-statement trigger, no
> >> references to the 'OLD' or 'NEW' rows will be allowed
>
> It appears that statement triggers are implemented this way right now in
> CVS tip. Unfortunately, this means that there's no way to figure out the
> record set that is covered by the triggering action, which I consider
> being fundamental for a usable implementation. There should be new
> references,
> called OLDSET and NEWSET or something like that.
Agreed.
>
> >> - should we allow per-statement BEFORE triggers? DB2 doesn't,
> >> but I'm not sure that's because they just cut corners, or if
> >> there's some legitimate reason not to allow them. AFAICT SQL
> >> 200x doesn't specify that they *aren't* allowed, so I'm
> >> inclined to allow them...
>
> MS SQL2000 has only AFTER STATEMENT triggers too, which seems to be
> sufficient.
Since BEFORE ROW triggers can modify or suppress the resulting changes,
there is no way to have a BEFORE STATEMENT trigger if we also want
NEWSET and OLDSET.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck@Yahoo.com #