Thanks for the detailed explanation.

Regards,
Chris

On Tue, Feb 9, 2016 at 4:05 PM, R Smith <rsmith at rsweb.co.za> wrote:

> That's not an SQLitespeed feature but indeed a backwards-compatible SQLite
> feature. (I had this wrong too at some point)
>
> You probably already know, but to be clear: In SQL standard, double-quotes
> indicate identifiers and single quotes indicate string values.
> While the single quotes are used more or less universally, identifiers
> often get quoted differently.
> In Postgres and SQLite the standard is adhered to with Double quotes.
> MySQL uses a back-tick like this ` (which, by the way, will also work in
> SQLite due the same backward compatibility)
> MSSQL likes the square brackets [ and ] around identifiers (which, again,
> also works in SQLite for the same reason)
>
> Further to this, in earlier MySQL and in SQLite you may also use double
> quotes to denote strings, and it will regard a double-quoted value to be a
> string if A - it isn't an identifier, or B - used in a place where you
> can't use an identifier. (You can just imagine the bugs in your SQL that
> can arise from this!)
>
> While all of the above works, you are strongly encouraged to simply do it
> correctly and use double-quotes for identifiers and single quotes for
> strings.
>
> We have been lobbying for a strict-mode in SQLite where none of these
> shenanigans are allowed - but that is far easier said than done.
>
>
>
> On 2016/02/09 5:10 PM, Chris Prakoso wrote:
>
>> Actually I've just done it now, in SQLiteSpeed, and it allowed me to use
>> double-quote as delimiter successfully.
>>
>> Regards,
>> Chris
>>
>> On Tue, Feb 9, 2016 at 3:03 PM, Simon Slavin <slavins at bigfraud.org>
>> wrote:
>>
>> On 9 Feb 2016, at 12:10pm, Chris Prakoso <chris at prakoso.net> wrote:
>>>
>>> *insert into test (field1,field2) values (1,"two"),(2,"three")*
>>>>
>>> As well as the comments about your software being out of date, you need
>>> to
>>> know that the text delimiter in SQLite is the non-directional single
>>> quote
>>> character normally seen as an apostrophe.  You cannot successfully use
>>> the
>>> double quote character or any directional quotes.
>>>
>>> Should be
>>>
>>>          insert into test (field1,field2) values (1,'two'),(2,'three')
>>>
>>> Simon.
>>> _______________________________________________
>>> sqlite-users mailing list
>>> sqlite-users at mailinglists.sqlite.org
>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>>
>>> _______________________________________________
>> sqlite-users mailing list
>> sqlite-users at mailinglists.sqlite.org
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>
>
> _______________________________________________
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>

Reply via email to