Обсуждение: BUG #4103: DELETE Syntax Error

Поиск
Список
Период
Сортировка

BUG #4103: DELETE Syntax Error

От
"Yu Jye Foo"
Дата:
The following bug has been logged online:

Bug reference:      4103
Logged by:          Yu Jye Foo
Email address:      yu.jyefoo@autodesk.com
PostgreSQL version: 8.3.0
Operating system:   Windows XP x64
Description:        DELETE Syntax Error
Details:

2008-04-11 09:01:02 PDT ERROR:  syntax error at or near "LIMIT" at character
97
2008-04-11 09:01:02 PDT STATEMENT:  DELETE FROM BASELINES WHERE file_id IN
(SELECT file_id FROM files WHERE config_id = 1155042061) LIMIT 4001;

To remove the possibility that the database was invalid,
SELECT * FROM BASELINES WHERE file_id IN (SELECT file_id FROM files WHERE
config_id = 1155042061) LIMIT 4001;

has no issues running.

Removing the "LIMIT 4001" yields the same issue. I am communicating with the
database through the psqlODBC driver.

Re: BUG #4103: DELETE Syntax Error

От
Tom Lane
Дата:
"Yu Jye Foo" <yu.jyefoo@autodesk.com> writes:
> 2008-04-11 09:01:02 PDT ERROR:  syntax error at or near "LIMIT" at character
> 97
> 2008-04-11 09:01:02 PDT STATEMENT:  DELETE FROM BASELINES WHERE file_id IN
> (SELECT file_id FROM files WHERE config_id = 1155042061) LIMIT 4001;

Uh, what's your point?  DELETE does not have a LIMIT option.

Or maybe you meant to put the LIMIT on the SELECT?  In that case it
should go inside the parentheses.

            regards, tom lane