0

我读了一些关于表索引的建议,我发现当你的 sql 查询运行缓慢时应该稍后引入索引。

我的问题是我在一张表中索引了几乎所有列。此表绑定到其他表,例如用户表列国家绑定到国家表

user table          country table
id                  id
countryId           name

我在 countryId 列中添加了一个索引,以便我可以将它链接到国家表的 id,因为当我在列上没有索引时我无法创建外键约束。

基本上我有很多列链接到其他表只是为了向我的列添加约束。

例如,country 表不超过 100,所以如果有人不小心插入了 101 的值,mysql 将不会接受该数据,因为 country 表只有 1-100..

那么如何在避免添加索引的情况下仍然具有表数据约束的功能呢?

4

1 回答 1

1
  1. 这个建议太糟糕了。

  2. 您将要搜索的或需要特定约束(例如唯一值)的索引列。

不添加索引的唯一原因是它们确实占用空间。但是,除非您处理的数据如此之多以至于需要数据库管理员,否则您可能不必担心它。

于 2012-05-16T04:52:29.937 回答