On 8 Jul 2017, at 8:36pm, petern <[email protected]> wrote:
> Why does the choice of data value quotation mark influence the output
> column name of the inline VALUES clause?
I admire your set of examples, which show the behaviour well.
Column names in SQLite are not dependable unless you have set them using an
"AS" clause. Not only can they vary with the type of value, as you have
demonstrated, but they have changed with different versions of SQLite and may
change again. There are also PRAGMAs which change column names, though they
are deprecated.
If your code needs to depend on column names for anything other than a simple
SELECT of TABLE columns, set them explicitly using "AS" for each column.
> sqlite> SELECT * FROM (VALUES ("1",2),(3,4));
This is not a recommended syntax for use with SQLite. Strings should be
enclosed in single quotes (apostrophes) as you did in another example. Double
quotes are expected to refer to entity names, though they are rarely needed
even for that. Although SQLite does not complain when you use double quotes
for values in the above way, its interpretation can be inconsistent and
unhelpful.
Simon.
_______________________________________________
sqlite-users mailing list
[email protected]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users