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@xxxxxxxxx> 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@xxxxxxxxx> wrote:
> so my syntax is correct? just wondering if there's some fundamental mistake
> in it
> ~Harpreet
>
>
> On 1/16/07, Tom Lane < tgl@xxxxxxxxxxxxx> wrote:
> > "Harpreet Dhaliwal" < harpreet.dhaliwal01@xxxxxxxxx > 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