triggers and TriggerData
First, thank you for your answers about my problem with the function
'CREATE TRIGGER',
I have another question about triggers, how can I pass arguments ?? I
read about some struct TriggerData *CurrentTriggerData, but I didn't
found any explanation or example about how to use it in postgres SQL.
My problem is that for any INSERT row in table 'B' I need to pass to
the function trigger two values of this row. Do you know how to do so
or where are examples of how to do it ??
Thank you again,
Gustavo
--
||\ // \
| \\ // |
I'm thinking. \ \\ l\\l_ // |
_ _ | \\/ `/ `.| |
/~\\ \ //~\ | Y | | || Y |
| \\ \ // | | \| | |\ / |
[ || || ] \ | o|o | > /
] Y || || Y [ \___\_--_ /_/__/
| \_|l,------.l|_/ | /.-\(____) /--.\
| >' `< | `--(______)----'
\ (/~`--____--'~\) / U// U / \
`-_>-__________-<_-' / \ / /|
/(_#(__)#_)\ ( .) / / ]
\___/__\___/ `.`' / [
/__`--'__\ |`-' |
/\(__,>-~~ __) | |__
/\//\\( `--~~ ) _l |--:.
'\/ <^\ /^> | ` ( < \\
_\ >-__-< /_ ,-\ ,-~~->. \ `:.___,/
(___\ /___) (____/ (____) `---'
On Sunday 21 January 2007 15:56, gustavo halperin
<ggh.develop@gmail.com> wrote:
First, thank you for your answers about my problem with the function
'CREATE TRIGGER',
I have another question about triggers, how can I pass arguments ?? I
read about some struct TriggerData *CurrentTriggerData, but I didn't
found any explanation or example about how to use it in postgres SQL.
My problem is that for any INSERT row in table 'B' I need to pass
to the function trigger two values of this row. Do you know how to
do so or where are examples of how to do it ??
You cannot pass values to a trigger.
However, insert triggers (in PLpgSQL at least) receive the row value in
the NEW record variable. There are examples in the documentation.
http://www.postgresql.org/docs/8.2/interactive/plpgsql-trigger.html#PLPGSQL-TRIGGER-EXAMPLE
--
"A government that robs Peter to pay Paul can always depend upon the
support of Paul." - George Bernard Shaw
On Sun, Jan 21, 2007 at 09:05:30PM -0800, Alan Hodgson wrote:
On Sunday 21 January 2007 15:56, gustavo halperin <ggh.develop@gmail.com> wrote:
I have another question about triggers, how can I pass arguments ?? I
read about some struct TriggerData *CurrentTriggerData, but I didn't
found any explanation or example about how to use it in postgres SQL.
My problem is that for any INSERT row in table 'B' I need to pass
to the function trigger two values of this row. Do you know how to
do so or where are examples of how to do it ??You cannot pass values to a trigger.
You can pass literal string arguments to a trigger function. See
the CREATE TRIGGER documentation and, for PL/pgSQL, TG_ARGV and
TG_NARGS. For C see "Writing Trigger Functions in C"; search for
tgnargs and tgargs.
http://www.postgresql.org/docs/8.2/interactive/sql-createtrigger.html
http://www.postgresql.org/docs/8.2/interactive/plpgsql-trigger.html
http://www.postgresql.org/docs/8.2/interactive/trigger-interface.html
(These links are to the 8.2 documentation but earlier versions also
support arguments to trigger functions.)
--
Michael Fuhr
On Monday 22 January 2007 07:04, Michael Fuhr <mike@fuhr.org> wrote:
You can pass literal string arguments to a trigger function. See
the CREATE TRIGGER documentation and, for PL/pgSQL, TG_ARGV and
TG_NARGS. For C see "Writing Trigger Functions in C"; search for
tgnargs and tgargs.http://www.postgresql.org/docs/8.2/interactive/sql-createtrigger.html
http://www.postgresql.org/docs/8.2/interactive/plpgsql-trigger.html
http://www.postgresql.org/docs/8.2/interactive/trigger-interface.html(These links are to the 8.2 documentation but earlier versions also
support arguments to trigger functions.)
I stand corrected. And I can imagine some uses for passing string constants
to triggers, but nothing related to what the OP was looking for ...
--
99 percent of lawyers give the rest a bad name