Rails -- :id 属性需要数据库索引吗?

发布于 2024-11-16 18:40:28 字数 326 浏览 4 评论 0原文

因此,当我关注 Michael Hartl 的 Ruby on Rails 教程时,我注意到在 users 表中,我们为 :email 属性添加了唯一索引,以提高 find 的效率> 方法,因此它不会逐行搜索。到目前为止,我们一直根据情况使用 find_by_emailfind_by_id 进行搜索。然而我们从未为 :id 属性设置索引。 :id 是否会自动索引,因为它默认是唯一且连续的?或者情况并非如此,我应该为 :id 搜索添加索引吗?

So as I was following the Ruby on Rails Tutorial by Michael Hartl I noticed that in the users table we added a unique index for the :email attribute to improve the efficiency of the find method so it doesn't search row by row. So far we have been searching using both find_by_email and find_by_id depending on the case. Yet we never set up an index for the :id attribute. Is :id automatically indexed because it is by default unique and sequential in nature? Or is this not the case and should I add an index for :id searching?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小伙你站住 2024-11-23 18:40:28

大多数数据库(包括 sqlite,它是 RoR 中的默认数据库)都会自动索引主键,Rails Migrations 默认情况下主键是 :id

Most databases (sqlite included, which is the default db in RoR) automatically index the primary key, which with Rails Migrations is :id by default.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文