Thread: BUG #6617: FETCH FIRST syntax accepts only constants and not parameters

BUG #6617: FETCH FIRST syntax accepts only constants and not parameters

From
dodobas@geoinfo.geof.hr
Date:
The following bug has been logged on the website:

Bug reference:      6617
Logged by:          Dra=C5=BEen Odoba=C5=A1i=C4=87
Email address:      dodobas@geoinfo.geof.hr
PostgreSQL version: 9.1.3
Operating system:   Linux 3.3.3
Description:=20=20=20=20=20=20=20=20

When tried setting FETCH FIRST parameter dynamically in RETURN QUERY EXECUTE
some_query USING param1 it resulted with a syntax error on FETCH FIRST
parameter.

Apparently, it only accepts constants so it works with ($1)=20

Bug example: https://pgsql.privatepaste.com/1e3ef786a5

Re: BUG #6617: FETCH FIRST syntax accepts only constants and not parameters

From
"Kevin Grittner"
Date:
<dodobas@geoinfo.geof.hr> wrote:

> When tried setting FETCH FIRST parameter dynamically in RETURN
> QUERY EXECUTE some_query USING param1 it resulted with a syntax
> error on FETCH FIRST parameter.
>
> Apparently, it only accepts constants so it works with ($1)

That's not a bug.  Use the parentheses as specified in the
documentation:

http://www.postgresql.org/docs/9.1/interactive/sql-select.html#SQL-LIMIT

| to write anything except a simple integer constant for start or
| count, you must write parentheses around it.

-Kevin