guard wrote:
> dear all
>
> I have function >>
> spi_exec "Update $1 set
> adv_amt=adv_amt-$OLD(adv_amt)+$OLD(gadv_amt) where $2=''$OLD($2)'' "
>
> how to change plpgsql code
>
> ps. $1 a variable
It would be nice to see the entire function declaration, or at least the CREATE FUNCTION part, and not just
one single statement out of it's body.
Second it looks alot like an AFTER UPDATE trigger to me. In that case, I would suggest changing it into a
BEFORE UPDATE one and do the modification directly in the NEW.adv_amt field. The way you're doing it now
add'sone more dead tuple to the table.
The above is usually achieved in PL/pgSQL with the EXECUTE syntax. But I would discourage from that and
suggest creating separate functions per table/attribute pair, because EXECUTE (as well as spi_exec in Tcl)
statements are not cacheable.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck@Yahoo.com #
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com