|
|
|
|
@ -336,7 +336,7 @@ SELECT perl_get_field((11,12), 'z'); |
|
|
|
|
-- Test return_next |
|
|
|
|
-- |
|
|
|
|
CREATE OR REPLACE FUNCTION perl_srf_rn() RETURNS SETOF RECORD AS $$ |
|
|
|
|
$i = 0; |
|
|
|
|
my $i = 0; |
|
|
|
|
for ("World", "PostgreSQL", "PL/Perl") { |
|
|
|
|
return_next({f1=>++$i, f2=>'Hello', f3=>$_}); |
|
|
|
|
} |
|
|
|
|
@ -354,8 +354,8 @@ SELECT * from perl_srf_rn() AS (f1 INTEGER, f2 TEXT, f3 TEXT); |
|
|
|
|
-- Test spi_query/spi_fetchrow |
|
|
|
|
-- |
|
|
|
|
CREATE OR REPLACE FUNCTION perl_spi_func() RETURNS SETOF INTEGER AS $$ |
|
|
|
|
$x = spi_query("select 1 as a union select 2 as a"); |
|
|
|
|
while (defined ($y = spi_fetchrow($x))) { |
|
|
|
|
my $x = spi_query("select 1 as a union select 2 as a"); |
|
|
|
|
while (defined (my $y = spi_fetchrow($x))) { |
|
|
|
|
return_next($y->{a}); |
|
|
|
|
} |
|
|
|
|
return; |
|
|
|
|
|