Обсуждение: eval in plpgsl

Поиск
Список
Период
Сортировка

eval in plpgsl

От
Mage
Дата:
          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



Re: eval in plpgsl

От
Bruce Momjian
Дата:
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

Re: eval in plpgsl

От
Mage
Дата:
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



Re: eval in plpgsl

От
Jeff Eckermann
Дата:
--- 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/

Re: eval in plpgsl

От
Jan Wieck
Дата:
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 #