【发布时间】:2010-01-15 04:58:52
【问题描述】:
如果您没有指定主键,SQLite3 会为每个表提供一个名为 rowid 的默认主键。但是,依赖这个似乎有一些缺点:
VACUUM 命令可能会更改没有显式 INTEGER PRIMARY KEY 的表中条目的 ROWID。
http://www.sqlite.org/lang_vacuum.html
我想更改现有的 SQLite3 数据库以使用显式主键而不是隐式 rowid,因此我能够在必要时运行真空。我可以在不重建整个数据库的情况下执行此操作吗?
【问题讨论】: