As long as it is an insert or update trigger that fires your tcl
function, you have access to the NEW array. The foreach loop uses the
tcl command [array names NEW] to suck out the names of the existing
members of the array. If a column called duser exists in the NEW array
(it is part of the inserted tuple, or not updated to null) you should be
able to access it as
$NEW(duser)
What error are you getting? If the duser column is null, there is no
array member called NEW(duser) and you will get an error to that effect.
Josué Maldonado wrote:
Hi list,
Is there a way to access an especific element of the array NEW in an
TCL trigger, I have a loop that goes for each field (thanks Ian &
Darren) like this:
foreach id [array names NEW] {
then I can refer to an element with this (inside the loop):
$NEW($id)
I do need to make a reference to an especific column name (duser) in
that array to get its value, I already tried $NEW(duser),
$NEW(\'duser\') but didn't work. I'll appreciate any help from you
Thanks
Josue Maldonado
---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
(send "unregister YourEmailAddressHere" to ma*******@postgresql.org)
---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
joining column's datatypes do not match