微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

索引是 SQL 中的约束吗?

如何解决索引是 SQL 中的约束吗?

很少有文档说索引是一种约束,但其他文档没有在约束部分包含索引,所以很怀疑,索引是否是约束?。

有人可以分享您对此的看法吗...?

Constraint

解决方法

  1. 索引是架构对象

  2. 索引是数据库搜索引擎可以用来加速数据检索的特殊查找表。简单地说,索引是指向表中数据的指针。中的一个索引 该数据库非常类似于书后的索引。

  3. 索引用于比其他方法更快地从数据库中检索数据。用户看不到索引,它们只是用来加速搜索/查询。

  4. 在表列上定义 PRIMARY KEY 和 UNIQUE 约束时,会自动创建索引。例如,当您创建具有 UNIQUE 约束的表时,数据库引擎会自动创建一个非聚集索引。如果配置 PRIMARY KEY,数据库引擎会自动创建聚集索引,除非聚集索引已存在。当您尝试对现有表强制执行 PRIMARY KEY 约束并且该表上已存在聚集索引时,SQL Server 将使用非聚集索引强制执行主键。

,

MySQL 为三种类型的约束创建索引:

  • 主键约束创建唯一索引。
  • 唯一约束创建唯一索引。
  • 外键约束在引用列上创建索引。

前两个在所有数据库中都很常见。

索引是约束吗?不是真的,但唯一索引与相同列上的唯一约束具有相同的效果。因此,您可以将唯一索引视为实现唯一约束。也就是说,我认为因果关系可以通过另一种方式更好地理解:唯一约束是使用唯一索引实现的。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。