Re: Use UNKNOWN with PL/Perl spi_prepare()?
От | Andrew Dunstan |
---|---|
Тема | Re: Use UNKNOWN with PL/Perl spi_prepare()? |
Дата | |
Msg-id | 4BBBC9EC.6020305@dunslane.net обсуждение исходный текст |
Ответ на | Re: Use UNKNOWN with PL/Perl spi_prepare()? ("David E. Wheeler" <david@kineticode.com>) |
Ответы |
Re: Use UNKNOWN with PL/Perl spi_prepare()?
|
Список | pgsql-hackers |
David E. Wheeler wrote: > On Apr 6, 2010, at 4:40 PM, Tom Lane wrote: > > >>> I tried this: >>> try=# create or replace function try() returns void language plperl as $$ >>> spi_prepare('select length($1)', 'unknown'); >>> $$; >>> CREATE FUNCTION >>> try=# select try(); >>> ERROR: error from Perl function "try": failed to find conversion function from unknown to text at line 2. >>> >> Why would you think this is useful, considering that plperl has no >> concept of SQL data types? Everything you could pass to >> spi_exec_prepared is effectively text, no? >> > > try=# create or replace function try() returns void language plperl as $$ > spi_prepare('select abs($1)', 'text'); > $$; > CREATE FUNCTION > try=# select try(); > ERROR: error from Perl function "try": function abs(text) does not exist at line 2. > > > Indeed it doesn't. But (as documented) the argument will be passed *from* *perl* as text and converted to the specified type in the glue code. See plperl.c for details. cheers andrew
В списке pgsql-hackers по дате отправления: