You are here: Re: How to distinguish operation type in trigger? « MsSQL Server « IT news, forums, messages
Re: How to distinguish operation type in trigger?

Posted by Hubert Trzewik on 05/31/07 13:32

On May 31, 1:48 pm, M A Srinivas <masri...@gmail.com> wrote:
> On May 31, 3:19 pm, Hubert Trzewik <hubert.trze...@gmail.com> wrote:
>
>
>
> > Hi,
>
> > I want to have all-in-one trigger, defined like this:
>
> > CREATE TRIGGER MyInsertDeleteUpdateHandler
> > ON MyTable
> > FOR DELETE, INSERT, UPDATE
> > AS
> > BEGIN
> > (...)
> > END
>
> > Now, how can I tell why this trigger was fired (what event caused
> > trigger to be fired) - was it DELETE, INSERT or UPDATE?
>
> > Is there something like this: @@event_type,
> > so I could do for example IF (@@event_type = DELETE) (...)
>
> > Of course I can create 3 triggers instead of 1, to be sure what event
> > fired my trigger.
>
> > I can also count records in _deleted_, _inserted_ tables or to do
> > JOINs with it. But, _inserted_ table is common for UPDATE and INSERT
> > events..
>
> > Any suggestions?
> > Thanks in advance.
>
> > Hubert
>
> For Inserted : Rows are in inserted only
> For Updated: Rows are in inserted and deleted
> For deleted: Rows are in deleted only

That's right. One test more and.. UPDATE is seen both in _inserted_
and _deleted_, so I can distinguish it from INSERT (and DELETE of
course).

Thanks a lot.

Hubert

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация