Oh I see, I thought you were talking about my database. Even so, Emile is clearly correct to surmise that the RowSet must contain the header information as well as the row data. The database can’t talk to the ListBox directly.
Anyway, I think I’d better mark my earlier code as the solution or this will drag on and on. Many thanks.
This very point is made repeatedly on the SQLite forum by the devs, when it comes up from time to time (just as they also mention that a result set has no order unless you define one). The name you define using the AS keyword is guaranteed to be the name you get and can use in a result set. However, we don’t see this issue mentioned anywhere in the Xojo doc, as far as I know, so perhaps they work around it somehow.
See SQLite Frequently Asked Questions and look at the answer to Q.28.
Didn’t know that and, on the face of it, how very backward. I’m no DB expert but if the DB accepts a name as valid for a column and is, therefore, stored as such, it should be expected to return it.
Yes, I wouldn’t want to change the hundreds of SELECTs in my app to use AS all over the place. But it might be the SQL standard, for all I know. Feel free to post on the SQLite User Forum and argue the point, though.