Peter Halasz wrote: > However, it's quite clear to me, as only a user of just a few of these > tools and libraries, that they would be improved greatly if they had a > direct way of querying which field in a SQLite table was acting as an alias > of ROW ID.
The rowid column must have the type "integer", and must be the only column in the primary key: SELECT name FROM pragma_table_info('MyTable') WHERE type = 'integer' COLLATE NOCASE GROUP BY pk != 0 HAVING max(pk) = 1; (Before version 3.16.0, this was harder without pragma_table_info().) But there is no reliable way to check for the PRIMARY KEY DESC exception, or whether a table is a WITHOUT ROWID table. You could try to read the rowid/oid/_rowid_ columns, as long as the table does not use all three of these names for other columns. Regards, Clemens _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users