On 3/20/19, Steve Horvath <[email protected]> wrote:
>
> I hope you have enough details to troubleshoot!
>

String literals in SQL should be enclosed in single-quotes, not
double-quotes.  'WHITE', not "WHITE".  Double-quotes are used to
escape identifier names.  This is standard SQL.

When SQLite was first designed, year and years ago, MySQL 3.x was the
most widely used database engine, and so SQLite accepted double-quoted
string literals for compatibility, if it could not match the name
against a known identifier.  This was a design mistake on my part.  I
should have never tried to be MySQL 3.x compatible.  But I cannot go
back and change it now, as that would break SQLite compatibility!
Probably you would not have made this mistake if SQLite had issued
syntax errors for double-quoted string literals.

More recent versions of SQLite do issue a warning on the sqlite3_log
interface if you use a double-quoted string literal.  But not many
people look at warnings, it turns out.


-- 
D. Richard Hipp
[email protected]
_______________________________________________
sqlite-users mailing list
[email protected]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to