> While implementing a table that intended for arbitrary table storage, I > automatically named some field rowid not linking at the moment that it > will > have a name conflict with sqlite internal rowid name. Lately I discovered > this, and (not a big deal) recreated table with a different name. But just > wondering, was allowing to create such field intentional? As I suppose > such > field is complete phantom since most sql queries will interpret rowid > internally and won't allow access this user field at all.
Sqlite works by giving priority to the column names defined in the table. So if you have a column named rowid then it will access this rather than the internal rowid. Therefore, there is more than one way of accessing this internal rowid: rowid, _rowid_ and oid. Of course if you define a column "rowid integer primary key" then the declared column and the internal rowid are one and the same... http://www.sqlite.org/lang_createtable.html#rowid _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users