SQLite Forum

Modify rowid via C-API callback
Sorry I was not specific enough. Regarding rowids there are 4 "safe" Possibilities:

a) you neither need nor want rowids: declare a WITHOUT ROWID table

b) you don't care: do not declare an alias an do not use the built-in names

c) you don't care about the specific value: declare an alias, but use it only for foreign keys with appropriate constraints

d) you care about a specific value: declare an alias and always supply a value on INSERT and be prepared to handle conflicts

The example I gave illustrates that you can set it even without explicit declaration. I did not mean to imply that it would be prudent to do so.