ruby-on-rails - 为什么 Rails 数据库 ID 在销毁中间项后继续向前计数?

标签 ruby-on-rails ruby-on-rails-3 relational-database rails-migrations

标题可能不是很清楚,反正还是看这个比较好:

我创建/销毁项目 A、B 和 C 的顺序是:

  1. 创建 A --> id:1
  2. 创建 B --> id:2
  3. 摧毁B
  4. 创建 C --> id:3

我已经销毁了B,C应该算作id:2吧?

最佳答案

id 的基础数据库列设置为自动增量。 id 是在数据库级别生成的,而不是由 ActiveRecord 生成的。如果您想了解更多信息,请阅读 SQL 序列或 autoincrement .

关于ruby-on-rails - 为什么 Rails 数据库 ID 在销毁中间项后继续向前计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7821789/

相关文章:

ruby-on-rails - Rails 渲染 - 获取部分源代码而不是输出 HTML

ruby-on-rails - 跨多个 ruby​​/rails 项目共享自定义 RSpec 匹配器的最干净、最简单的方法是什么?

ruby-on-rails-3 - 如果从 Facebook 注销,则设计强制注销

ruby-on-rails - rails 迁移: postgresql for md5 of random string as default

mysql - 在数据库中存储用户密码/数据

python - django admin 中用户定义的文本字段

ruby-on-rails - 如何限制 current_user 每个时间段向订单添加超过 3 个 order_items?

ruby-on-rails - 如何正确使用具有唯一性验证的 shoulda 匹配器?

ruby - 如何将新的自定义资源添加到路由 Rails 3

mysql - SQL查询以找出针对个人ID的总和