【发布时间】:2012-12-15 12:14:24
【问题描述】:
我在示例 Rails 应用程序中使用 sqlite db。从我的用户表中,我使用User.delete_all 清除了所有记录。但是现在每当我使用User.create 在表中插入新记录时,id 的开始值比表中最后一条记录的 id 大一。例如,如果我的表有 5 条记录并且我清除了所有记录,那么当我执行 User.create 时,它从 id 6 开始。
有什么办法可以让 id 再次从 1 开始?
谢谢
【问题讨论】:
-
我相信您会执行 rake db:reset 或类似操作来清除索引。或者,您可以使用:sqlite.org/lang_reindex.html。但是,为什么需要这样做呢??
-
通过在 rails 控制台运行以下命令修复:ActiveRecord::Base.connection.execute("DELETE from sqlite_sequence where name = 'users'")
标签: ruby-on-rails sqlite activerecord