Обсуждение: Re: How can I view the definition of an existing trigger?
Thanks for the reply. I checked pg_trigger, but it only seems to have information *about* the trigger, and not the actual text of the trigger command. As far as I can tell, the only way for me to hang on to trigger definitions is to put the create trigger commands in a file that I then source into psql. As for triggers already created, my best bet may be to drop what's there and recreate it so I know exactly what it does. Unless anyone has a better idea.... Justin Clift <justin%postgresql.org@interlock.lexmark.com> on 08/11/2001 04:59:52 PM To: "Wesley_Sheldahl/Lex/Lexmark.LEXMARK"@sweeper.lex.lexmark.com cc: (bcc: Wesley Sheldahl/Lex/Lexmark) Subject: Re: [GENERAL] How can I view the definition of an existing trigger? Hi Wes, Not sure exactly, but in theory it would be stored in one of PostgreSQL's special pg_* tables. So, also in theory, if you can isolate where they're stored, you might be able to find it. :-) Regards and best wishes, Justin Clift wsheldah@lexmark.com wrote: > > Is there any way short of a full database dump to view the "CREATE TRIGGER" > statement of a trigger after it's been created, preferable via a command line > tool like psql? Is it accessible via any of the GUI tools out there? Thanks, > > Wes > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster -- "My grandfather once told me that there are two kinds of people: those who work and those who take the credit. He told me to try to be in the first group; there was less competition there." - Indira Gandhi
Use pg_dump to dump your schema as a text file (/usr/local/pgsql/bin/pg_dump -s > my_schema.sql). This text file should contain *all* of the data that creates the schema of your database, including triggers and stored procedures. I think this should work ;) -Ryan At 09:18 AM 8/13/01 -0400, wsheldah@lexmark.com wrote: >Thanks for the reply. I checked pg_trigger, but it only seems to have >information *about* the trigger, and not the actual text of the trigger >command. >As far as I can tell, the only way for me to hang on to trigger definitions is >to put the create trigger commands in a file that I then source into psql. As >for triggers already created, my best bet may be to drop what's there and >recreate it so I know exactly what it does. Unless anyone has a better >idea.... > > > > >Justin Clift <justin%postgresql.org@interlock.lexmark.com> on 08/11/2001 >04:59:52 PM > >To: "Wesley_Sheldahl/Lex/Lexmark.LEXMARK"@sweeper.lex.lexmark.com >cc: (bcc: Wesley Sheldahl/Lex/Lexmark) >Subject: Re: [GENERAL] How can I view the definition of an existing trigger? > > >Hi Wes, > >Not sure exactly, but in theory it would be stored in one of >PostgreSQL's special pg_* tables. So, also in theory, if you can >isolate where they're stored, you might be able to find it. > >:-) > >Regards and best wishes, > >Justin Clift > > >wsheldah@lexmark.com wrote: > > > > Is there any way short of a full database dump to view the "CREATE TRIGGER" > > statement of a trigger after it's been created, preferable via a > command line > > tool like psql? Is it accessible via any of the GUI tools out > there? Thanks, > > > > Wes > > > > ---------------------------(end of broadcast)--------------------------- > > TIP 4: Don't 'kill -9' the postmaster > >-- >"My grandfather once told me that there are two kinds of people: those >who work and those who take the credit. He told me to try to be in the >first group; there was less competition there." > - Indira Gandhi > > > > > >---------------------------(end of broadcast)--------------------------- >TIP 5: Have you checked our extensive FAQ? > >http://www.postgresql.org/users-lounge/docs/faq.html > > > >--- >Incoming mail is certified Virus Free. >Checked by AVG anti-virus system (http://www.grisoft.com). >Version: 6.0.251 / Virus Database: 124 - Release Date: 4/26/01 --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.251 / Virus Database: 124 - Release Date: 4/26/01
Wes,
Is this the kind of "trigger text" data you were interested in?
select relname as table_name,
tgname as trigger_name,
tgtype as trigger_type,
proname as trigger_function
from pg_class, pg_trigger, pg_proc
where pg_class.oid = tgrelid
and tgfoid = pg_proc.oid
and tgisconstraint = 'f'
order by table_name, trigger_name;
Bernie
wsheldah@lexmark.com wrote:
>
>Thanks for the reply. I checked pg_trigger, but it only seems to have
>information *about* the trigger, and not the actual text of the trigger command.
>As far as I can tell, the only way for me to hang on to trigger definitions is
>to put the create trigger commands in a file that I then source into psql. As
>for triggers already created, my best bet may be to drop what's there and
>recreate it so I know exactly what it does. Unless anyone has a better idea....
>
>
>
>
>Justin Clift <justin%postgresql.org@interlock.lexmark.com> on 08/11/2001
>04:59:52 PM
>
>To: "Wesley_Sheldahl/Lex/Lexmark.LEXMARK"@sweeper.lex.lexmark.com
>cc: (bcc: Wesley Sheldahl/Lex/Lexmark)
>Subject: Re: [GENERAL] How can I view the definition of an existing trigger?
>
>
>Hi Wes,
>
>Not sure exactly, but in theory it would be stored in one of
>PostgreSQL's special pg_* tables. So, also in theory, if you can
>isolate where they're stored, you might be able to find it.
>
>:-)
>
>Regards and best wishes,
>
>Justin Clift
>
>
>wsheldah@lexmark.com wrote:
>
>>Is there any way short of a full database dump to view the "CREATE TRIGGER"
>>statement of a trigger after it's been created, preferable via a command line
>>tool like psql? Is it accessible via any of the GUI tools out there? Thanks,
>>
>>Wes
>>
>>---------------------------(end of broadcast)---------------------------
>>TIP 4: Don't 'kill -9' the postmaster
>>
>
>--
>"My grandfather once told me that there are two kinds of people: those
>who work and those who take the credit. He told me to try to be in the
>first group; there was less competition there."
> - Indira Gandhi
>
>
>
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 5: Have you checked our extensive FAQ?
>
>http://www.postgresql.org/users-lounge/docs/faq.html
>