| From: | Uyelik <uyelik(at)yorukoglu(dot)name(dot)tr> |
|---|---|
| To: | Merlin Moncure <mmoncure(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org |
| Cc: | Jean-Gerard Pailloncy <jg(at)rilk(dot)com> |
| Subject: | Re: PL/SQL: function call like $1($2) |
| Date: | 2006-10-09 13:50:13 |
| Message-ID: | 452A5395.30400@yorukoglu.name.tr |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Hi,
you may try;
execute 'select ' || f || '(' || p || ')' into res;
Merlin Moncure wrote, On 09.10.2006 16:35:
> On 10/8/06, Jean-Gerard Pailloncy <jg(at)rilk(dot)com> wrote:
>> I want to create a function in PL/SQL as
>> CREATE OR REPLACE FUNCTION "f_do" (text, double precision[]) RETURNS
>> double precision AS '
>> DECLARE
>> f text := $1;
>> p double precision[] := $2;
>> res double precision;
>> BEGIN
>> SELECT f(p) into res;
>> RETURN res;
>> END;' LANGUAGE "plpgsql"
>> STABLE
>> RETURNS NULL ON NULL INPUT
>> SECURITY INVOKER
>>
>> But it does not work.
>> I try EXECUTE f || ' ( ' || p || ' );' INTO res
>> But is does not work too.
>> There is no function to convert double precision[] to text.
>>
>> Is it possible to do this without converting the array of double to
>> text ?
>
>
> what is are the arguments for function f()?
> Also, if you are using 8.0+, you can do dollar quoting and named input
> parameters. If not, i think using alias is preferred to assignment
> for giving names to arguments.
>
> merlin
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faq
>
>
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Michael Fuhr | 2006-10-09 13:54:11 | Re: PL/SQL: function call like $1($2) |
| Previous Message | Merlin Moncure | 2006-10-09 13:35:31 | Re: PL/SQL: function call like $1($2) |