这个问题很刁钻! 答案是错的。 的确在mysql数据库innodb引擎里面,主键的确就是聚集索引。 但是myisam引擎里面主键也不是聚集索引。 另外在sql server中还可以显示的指定聚集索引。 CREATE TABLE student( stud_id INT IDENTITY ...
前言 最近在一次面试中,讨论了一个这样的问题:主键和索引有什么区别 当时我的回答是这样的: 主键就是加了唯一性约束的聚集索引。 你确定你所说的是对的 面试官反问到。 应该是对的。 我不加思索地回答道。 你回去后研究一下这个问题吧。 难道我真的错了 第一次尝试 当问题出现时,请用事实支持你的观点。 首先,必须了解一些基本知识:对于一张表来说,聚集索引只能有一个,因为数据真实的物理存储顺序就是按照聚集 ...
2018-04-24 12:27 0 5099 推荐指数:
这个问题很刁钻! 答案是错的。 的确在mysql数据库innodb引擎里面,主键的确就是聚集索引。 但是myisam引擎里面主键也不是聚集索引。 另外在sql server中还可以显示的指定聚集索引。 CREATE TABLE student( stud_id INT IDENTITY ...
前言 最近在一次面试中,讨论了一个这样的问题:主键和索引有什么区别?当时我的回答是这样的:“主键就是加了唯一性约束的聚集索引。” “你确定你所说的是对的?” 面试官反问到。 “应该是对的。” 我不加思索地回答道。 “你回去后研究一下这个问题吧。” 难道我真的错了? 第一次尝试 ...
当我们对一个表建立一个主键时,默认会给该主键列添加一条聚集索引,这是数据库内部自动建立的,唯一性约束也会默认创建一个非聚集索引。 上面我们建立了一个主键id 和唯一性约束的name列,查看表可以看到这时产生了两个索引 聚集索引是一个宝贵的资源,在一些表的中有时我们永远 ...
前言 最近在一次面试中,讨论了一个这样的问题:主键和索引有什么区别?当时我的回答是这样的:“主键就是加了唯一性约束的聚集索引。” “你确定你所说的是对的?” 面试官反问到。 “应该是对的。” 我不加思索地回答道。 “你回去后研究一下这个问题吧。” 难道我真的错了? 第一次 ...
在今天的文章里我想谈下SQL Server里非常重要的话题,当人们第一次使用SQL Server时是最会混淆的。即主键约束(Primary Key constraint)和聚集索引(Clustered Index)的区别。 什么是主键(Primary Key) 首先让我们谈下主键约束 ...
那么聚集索引,聚集索引的叶节点存储的就是数据本身,这就意味着,聚集索引决定了数据的物理存储顺序。因 ...
SQLSERVER聚集索引和主键的误区 很多人会把Primary Key和聚集索引搞混起来,或者认为这是同一个东西。这个概念是非常错误的。 主键是一个约束(constraint),他依附在一个索引上,这个索引可以是聚集索引,也可以是非聚集索引。 所以在一个(或一组)字段上有主键 ...
为列创建索引实际上就是为列进行排序,以方便查询.建立一个列的索引,就相当与建立一个列的排序。 主键是唯一的,所以创建了一个主键的同时,也就这个字段创建了一个唯一的索引, 唯一索引实际上就是要求指定的列中所有的数据必须不同。 主键一唯一索引的区别 ...