社区
MS-SQL Server
帖子详情
唯一索引和非聚集索引的区别
guoli0813
2006-06-09 03:42:41
如上题
谢谢
...全文
260
2
打赏
收藏
唯一索引和非聚集索引的区别
如上题 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
marco08
2006-06-09
打赏
举报
回复
聚集索引会改变表的物理结构且只能有一个
非聚集索引则不会,且可以有多个
itblog
2006-06-09
打赏
举报
回复
聚集索引
在创建聚集索引时,将会对表进行复制,对表中的数据进行排序,然后删除原始的表。因此,数据库上必须有足够的空闲空间,以容纳数据复本。
默认情况下,表中的数据在创建索引时排序。但是,如果因聚集索引已经存在,且正在使用同一名称和列重新创建,而数据已经排序,则会重建索引,而不是从头创建该索引,以自动跳过排序操作。重建操作会检查行是否在生成索引时进行了排序。如果有任何行排序不正确,即会取消操作,不创建索引。
唯一索引
创建唯一索引可以确保任何生成重复键值的尝试都会失败。如果创建的单个查询导致添加了重复的和非重复的键值,SQL Server 会拒绝所有的行,包括非重复的键值。例如,如果一个单个的插入语句从表 A 检索了 20 行,然后将它们插入到表 B 中,而这些行中有 10 行包含重复键值,则默认情况下所有 20 行都将被拒绝。不过,在创建该索引时可以指定 IGNORE_DUP_KEY 子句,使得只有重复的键值才被拒绝,而非重复的键值将被添加。在上面的例子中,将只会拒绝 10 个重复的键值,其它 10 个非重复的键值将被添加到表 B 中。
如果有任何重复的键值,便不能创建唯一索引。例如,如果要在 a 列和 b 列上创建唯一的组合索引,而表中有两行的 a 列同为值 1,b 列同为值 2,则无法创建唯一索引。
索引的类型及分类,以及
唯一索引
、聚集索引和
非聚集索引
的本质
区别
索引的类型及分类,以及
唯一索引
、聚集索引和
非聚集索引
的本质
区别
聚集索引和
非聚集索引
的
区别
一、深入浅出理解索引结构 实际上,可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和
非聚集索引
(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和
非聚集索引
的
区别
: 其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字,因为“安”的拼音是...
聚集索引和
非聚集索引
,
唯一索引
和非唯索引的
区别
索引类型 根据数据库的功能,可在数据库设计器中创建三种类型的索引 —
唯一索引
、主键索引和聚集索引。 提示 尽管
唯一索引
有助于找到信息,但为了获得最佳性能,建议使用主键约束或唯一约束。
唯一索引
唯一索引
不允许两行具有相同的索引值。 主键索引 数据库表通常有一列或
mysql聚集索引和
非聚集索引
的
区别
_聚集索引与
非聚集索引
的总结
一.索引简介众所周知,索引是关系型数据库中给数据库表中一列或多列的值排序后的存储结构,SQL的主流索引结构有B+树以及Hash结构,聚集索引以及
非聚集索引
用的是B+树索引。这篇文章会总结SQL Server以及MySQL的InnoDB和MyISAM两种SQL的索引。SQL Sever索引类型有:
唯一索引
,主键索引,聚集索引,
非聚集索引
。MySQL 索引类型有:
唯一索引
,主键(聚集)索引,
非聚集索引
...
深入理解四种数据库索引类型(-
唯一索引
/非
唯一索引
- 主键索引(主索引) - 聚集索引/
非聚集索引
- 组合索引)
深入理解四种数据库索引类型(-
唯一索引
/非
唯一索引
- 主键索引(主索引) - 聚集索引/
非聚集索引
- 组合索引)
唯一索引
/非
唯一索引
主键索引(主索引) 聚集索引/
非聚集索引
组合索引
唯一索引
/非
唯一索引
唯一索引
1.
唯一索引
是在表上一个或者多个字段组合建立的索引,这个或者这些字段的值组合起来在表中不可以重复。 非
唯一索引
2.非
唯一索引
是在表上一个或者多个字段组合建立...
MS-SQL Server
34,873
社区成员
254,640
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章