On 23/02/10 17:15, dipti shah wrote:
Thanks. Putting $cmd in single quote resolve the error but it generated other error. :( mydb=> CREATE OR REPLACE FUNCTION test_create() RETURNS void AS $BODY$ $cmd = "CREATE TABLE testtable(col varchar not null);"; spi_exec_query("CREATE OR REPLACE FUNCTION myfunc() RETURNS void AS '$cmd'LANGUAGE plperl;"); spi_exec_query("SELECT myfunc();"); $BODY$ LANGUAGE 'plperl'; CREATE FUNCTION mydb=> SELECT test_create(); ERROR: error from Perl function "test_create": error from Perl function "myfunc": Can't locate object method "col" via package "varchar" (perhaps you forgot to load "varchar"?) at line 1. at line 3.
The function "myfunc" you are trying to create as plperl isn't perl. Either give it some perl or try "LANGUAGE SQL".
-- Richard Huxton Archonet Ltd -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general