deallocate statement failing

Started by rob stoneabout 6 years ago4 messagesgeneral
Jump to latest
#1rob stone
floriparob@gmail.com

Hello,

Version:-

PostgreSQL 12.1 (Debian 12.1-2) on x86_64-pc-linux-gnu, compiled by gcc
(Debian 9.2.1-22) 9.2.1 20200104, 64-bit

Log:-

2020-02-07 15:42:55 AEDT LOG: statement: SELECT COUNT(*) AS ps_count
FROM pg_prepared_statements WHERE name = 'AIT1581050529'
2020-02-07 15:42:55 AEDT ERROR: syntax error at or near
"'AIT1581050529'" at character 13
2020-02-07 15:42:55 AEDT STATEMENT: DEALLOCATE 'AIT1581050529'

The deallocate statement fails. It doesn't matter if it is just
"DEALLOCATE" or "DEALLOCATE PREPARE".
We put in the count statement to make sure the prepared statement still
existed and only issued the "DEALLOCATE" if ps_count is greater then
zero.

Does anybody know why it is giving this syntax error?

TIA,
Rob

#2Adrian Klaver
adrian.klaver@aklaver.com
In reply to: rob stone (#1)
Re: deallocate statement failing

On 2/6/20 9:02 PM, rob stone wrote:

Hello,

Version:-

PostgreSQL 12.1 (Debian 12.1-2) on x86_64-pc-linux-gnu, compiled by gcc
(Debian 9.2.1-22) 9.2.1 20200104, 64-bit

Log:-

2020-02-07 15:42:55 AEDT LOG: statement: SELECT COUNT(*) AS ps_count
FROM pg_prepared_statements WHERE name = 'AIT1581050529'
2020-02-07 15:42:55 AEDT ERROR: syntax error at or near
"'AIT1581050529'" at character 13
2020-02-07 15:42:55 AEDT STATEMENT: DEALLOCATE 'AIT1581050529'

Try:

DEALLOCATE AIT1581050529;

The deallocate statement fails. It doesn't matter if it is just
"DEALLOCATE" or "DEALLOCATE PREPARE".
We put in the count statement to make sure the prepared statement still
existed and only issued the "DEALLOCATE" if ps_count is greater then
zero.

Does anybody know why it is giving this syntax error?

TIA,
Rob

--
Adrian Klaver
adrian.klaver@aklaver.com

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: rob stone (#1)
Re: deallocate statement failing

rob stone <floriparob@gmail.com> writes:

2020-02-07 15:42:55 AEDT ERROR: syntax error at or near
"'AIT1581050529'" at character 13
2020-02-07 15:42:55 AEDT STATEMENT: DEALLOCATE 'AIT1581050529'

The deallocate statement fails. It doesn't matter if it is just
"DEALLOCATE" or "DEALLOCATE PREPARE".

I think you want double quotes not single quotes. The argument
of DEALLOCATE is an SQL identifier, not a string literal.

regards, tom lane

#4rob stone
floriparob@gmail.com
In reply to: Tom Lane (#3)
Re: deallocate statement failing

On Fri, 2020-02-07 at 00:48 -0500, Tom Lane wrote:

rob stone <floriparob@gmail.com> writes:

2020-02-07 15:42:55 AEDT ERROR: syntax error at or near
"'AIT1581050529'" at character 13
2020-02-07 15:42:55 AEDT STATEMENT: DEALLOCATE 'AIT1581050529'
The deallocate statement fails. It doesn't matter if it is just
"DEALLOCATE" or "DEALLOCATE PREPARE".

I think you want double quotes not single quotes. The argument
of DEALLOCATE is an SQL identifier, not a string literal.

regards, tom lane

That worked. Thanks.