Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: TRIGGER-Name of the current table

Re: TRIGGER-Name of the current table

From: Jim Kennedy <jim>
Date: Thu, 5 Oct 2006 07:20:09 -0700
Message-ID: <16idne-MGaCIibjYnZ2dnUVZ_uWdnZ2d@comcast.com>

"Taras" <taras.kolakovic_at_gmail.com> wrote in message news:1160052829.467604.54000_at_c28g2000cwb.googlegroups.com...
> Thanx for your answer, Martin,
>
> The main goal is to pass the original (old) record to a procedure,
> which would then concatinate all the values from this record an store
> them into a logging table. (i wanted to use that table name to retrieve
> rowtype later)
>
> I would like to have only one procedure, which would log records from
> many different tables.
> (perhaps i would pass them as ref cursor, i'm not sure yet how to do
> it, since i'm a beginner)
>
> The reason is that if we would decide to change the logging mechanism
> later, we would have to change only that procedure instead of 50
> triggers accross the schema.
>
> Also i would like to have this universal code, to add it to any new
> tables without serious modifications (because our database structure
> tends to change often)
>
> Regards, Taras
>
>
>
>
> Martin T. je napisal:
> > Taras wrote:
> > > Hello,
> > >
> > > I'm fairly new at PL-SQL, so forgive mi if this question sounds
> > > stupid...
> > >
> > > I'm trying to write a trigger on a certain table. Is it possible to
> > > retrieve the name of that table within the code of it's trigger?
> > >
> > > My goal is to write a code for universal trigger (it would do the same
> > > thing on all tables). That trigger would call a procedure and pass the
> > > name of it's parent table as a parameter.
> > >
> >
> > Maybe this is a good starting point for further searches:
> > http://forums.oracle.com/forums/message.jspa?messageID=512084
> >
> > What would your "universal" trigger do?
> >
> > cheers,
> > Martin
>

Robert is correct. One thing I have done is write a code generator. The trigger generator generates the code for the particular table and calls a stored procedure that does what you want.(the stored proc is in a package). The stored proc can have overloaded arguments and I pass in the table name. Jim Received on Thu Oct 05 2006 - 09:20:09 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US