Re: BUG #5732: parsing of: "WHERE mycol=123AND ..."
От | Gary Doades |
---|---|
Тема | Re: BUG #5732: parsing of: "WHERE mycol=123AND ..." |
Дата | |
Msg-id | 4CCC64B4.9030004@gpdnet.co.uk обсуждение исходный текст |
Ответ на | Re: BUG #5732: parsing of: "WHERE mycol=123AND ..." (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-bugs |
MS SQL server 2008 has no problem with this: select * from client where CLIENT_ID = 12AND SNAME='Smith' Returns the expected row. PostgreSQL 9.0 has no problem with it either, again throwing no error and returning the expected result. Regards, Gary. On 30/10/2010 7:23 PM, Tom Lane wrote: > Greg Stark<gsstark@mit.edu> writes: >> On Thu, Oct 28, 2010 at 5:20 PM, Tom Lane<tgl@sss.pgh.pa.us> wrote: >>> I experimented a bit with mysql's behavior, and it seems that (at least >>> in 5.1.51) what they do is treat "1and" or "2or" as if it were an >>> identifier. They're definitely not throwing an error, at least not on >> I guess the eleant question is what the lexical elements section of >> the standard says about identifiers. It pretty clearly declares that >> they can't start with digits: > Yeah. The key point IMO is that this *input* is not spec-compliant. > So implementations can either throw an error, or define their own > spec extension as to how to interpret it. I find mysql's behavior > interesting mostly because it shows that throwing an error isn't > necessarily common practice. Anybody want to try Oracle, DB2, etc? > > regards, tom lane >
В списке pgsql-bugs по дате отправления: