我正在使用phpMyAdmin。为了使用InnoDB设置外键约束(在Structure选项卡上的“Relation View”链接下),我似乎需要为要添加约束的字段添加索引。这显然会影响表上插入/更新的性能,特别是如果我想添加几个约束。是否可以在InnoDB中指定外键约束或关系完整性而无需为必填字段创建索引?
非常感谢 JS,伦敦
答案 0 :(得分:7)
InnoDB需要外国索引 键和引用键,以便 外键检查可以快速而不是 需要进行表扫描。在里面 引用表,必须有一个 索引所在的外键列 被列为第一列 同样的顺序。创建了这样的索引 在引用表上自动 如果它不存在。 (这是在 与一些旧版本形成鲜明对比 必须创建哪些索引 明确地或创造外国的 关键约束会失败。)
答案 1 :(得分:1)
外键约束指的是另一个的1键。外键也是一个索引 所以是的,您需要索引collumn(使用unique或使用外键)以在外键约束中使用它们。
有三种类型的索引:
- 主键
- 独特的指数
- 非唯一索引