Обсуждение: eval in plpgsl
Hello, is there any variable variable syntax or function in plpgsql? I didn't find it. I mean something like: magic(''new.'' || TG_ARGV[0]) = 5; Mage
Mage wrote: > Hello, > > is there any variable variable syntax or function in plpgsql? I didn't > find it. > > I mean something like: magic(''new.'' || TG_ARGV[0]) = 5; Uh, we have EXECUTE, but I don't know if will allow you to set a local variable. Maybe you can do: EXECUTE SELECT ''new.''|| TG_ARGV[0] INTO new var -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
Bruce Momjian wrote: > >Uh, we have EXECUTE, but I don't know if will allow you to set a local >variable. Maybe you can do: > > execute doesn't support select into Mage
--- Mage <mage@mage.hu> wrote: > Bruce Momjian wrote: > > > > >Uh, we have EXECUTE, but I don't know if will allow > you to set a local > >variable. Maybe you can do: > > > > > execute doesn't support select into It does, if you use the "for variablename in execute ..." syntax. Which may seem like overkill for setting just one value, but at least it will work for you. Or you could investigate other procedural languages, which may offer the capability you want. I believe pltcl does, and perhaps plpython also. > > Mage > > > > ---------------------------(end of > broadcast)--------------------------- > TIP 7: don't forget to increase your free space map settings __________________________________ Do you Yahoo!? Yahoo! Small Business $15K Web Design Giveaway http://promotions.yahoo.com/design_giveaway/
Bruce Momjian wrote: > Mage wrote: >> Hello, >> >> is there any variable variable syntax or function in plpgsql? I didn't >> find it. >> >> I mean something like: magic(''new.'' || TG_ARGV[0]) = 5; > > Uh, we have EXECUTE, but I don't know if will allow you to set a local > variable. Maybe you can do: > > EXECUTE SELECT ''new.''|| TG_ARGV[0] INTO new var > It does not. This really isn't a full blown scripting language. If one wants that, there is PL/Tcl. Jan -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== JanWieck@Yahoo.com #