You don't need a table per-se, SQLite has built-in facilities for that use-case, i.e. * `pragma application_id = ...` where `...` is a 4-byte integer usually called a *magic cookie*, and which is **fixed** and specific to your schema. * `pragma user_version = ...` where `...` is a *version* integer representing your current schema version, that you **increment** explicitly on schema changes. * and optionally, keep track of when upgrades where made in an ad-hoc table too, by whom, where, etc.. if you have the need for that. When opening the DB, check the `application_id` matches your expectation, and check `user_version` to know if you need to upgrade the schema, and also if it is newer than what the code expects. You can also do **deep schema introspection**, if you do not want to trust the two built-in integers above, but that's more complex, and I won't explain how to do that now.