Re: Dynamic loading of Perl Code in Postgres functions

Поиск
Список
Период
Сортировка
От Harpreet Dhaliwal
Тема Re: Dynamic loading of Perl Code in Postgres functions
Дата
Msg-id d86a77ef0701181504n4b5f2ed7g8a6b75b66cb9311e@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Dynamic loading of Perl Code in Postgres functions  ("Jasbinder Singh Bali" <jsbali@gmail.com>)
Ответы Re: Dynamic loading of Perl Code in Postgres functions  ("Jasbinder Singh Bali" <jsbali@gmail.com>)
Список pgsql-general
Don't think it would work the way you are doing it.
This way it would only work if you dealing with shared objects in C where in you dynamically load the shared object and then call a specific function of that shared object.

Lately i tried the following for you but it doesn't execute the Insert script inside sql.pl

CREATE OR REPLACE FUNCTION test_perl_param(int4)
  RETURNS bool AS
$BODY$
     require "/usr/local/pgsql/jsbali/sql.pl"
 $BODY$
  LANGUAGE 'plperlu' VOLATILE;
ALTER FUNCTION test_perl_param(int4) OWNER TO postgres;

SELECT test_perl_param(23)

Here in sql.pl i have one insert statement but SELECT test_perl_param(23) doesn't run the INSERT statement inside the sql.pl

Can anyone throw light on how to make it work so that whatever script i have inside sql.pl run as soon as I run SELECT test_perl_param(23).

I think this wold help out jas alot.

Thanks,
Harpreet

On 1/18/07, Jasbinder Singh Bali <jsbali@gmail.com> wrote:
Lately i've been able to user 'require' command successfully and the
script was pretty straight forward and simple. I had to play around
with @INC.

Moving forward, I have another question here,

CREATE FUNCTION *funcname* (*argument-types*) RETURNS *return-type* AS
    require " abc.pl"
$$ LANGUAGE plperlu;

In the above script if I have to call a particular sub-routine in abc.pl.
How can that be done?
I have to pass values to the arguments of a sub routine in abc.pl from
the the function funcname (arguments of the funcname in particular).
How would this thing be done?

Thanks,
Jas

On 1/16/07, Harpreet Dhaliwal < harpreet.dhaliwal01@gmail.com> wrote:
> so my syntax is correct? just wondering if there's some fundamental mistake
> in it
> ~Harpreet
>
>
> On 1/16/07, Tom Lane < tgl@sss.pgh.pa.us> wrote:
> > "Harpreet Dhaliwal" < harpreet.dhaliwal01@gmail.com > writes:
> > > I was just wondering if one could use something like this
> >
> > > CREATE FUNCTION *funcname* (*argument-types*) RETURNS *return-type* AS
> $$
> > >     require " abc.pl"
> > > $$ LANGUAGE plperl;
> >
> > You'd have to use plperlu, since "require" isn't considered a trusted
> > operation.
> >
> > > To include abc.pl here, how is the path of abc.pl specified.
> >
> > Same as you'd do it in plain Perl.
> >
> >                         regards, tom lane
> >
>
>

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

В списке pgsql-general по дате отправления:

Предыдущее
От: Matthew Peter
Дата:
Сообщение: Re: drive failre, corrupt data...
Следующее
От: Scott Ribe
Дата:
Сообщение: Re: Finding bogus dates