主键与唯一性索引简析_MySQL

WBOY
发布: 2016-06-01 13:42:29
原创
1450 人浏览过

bitsCN.com
其实指定列的索引就相当于对指定的列进行排序,为什么要排序呢?因为排序有利于对该列的查询,可以大大增加查询效率。(那么可能有人认为应该对所有的列排序,这样就可以增加整个数据库的查询效率?这样的想法是错误的,原因是建立索引也是要消耗系统资源的,给每个表里的每个列都建立索引那么将对系统造成极大的负担,那就更别提效率了!)---------简单的说建立一个列的索引,就相当与建立一个列的排序。 
 主键其实就是一个索引,但是这个索引跟一般的索引有所不同,不同在于主键所在的列里的每一个的记录都是唯一的,也可以说不能在主键里出现相同的记录,在同一个表里只能有一个主键。(主键等于索引,索引不一定等于主键)----------简单的说主键就是所在列不能出现相同记录的特殊索引,而且这个索引只能在表里出现一次。   1.主键一定是唯一性索引,唯一性索引并不一定就是主键;  2.一个表中可以有多个唯一性索引,但只能有一个主键;  3.主键列不允许空值,而唯一性索引列允许空值。  主键在表中有唯一标识的作用,不可重复,不能为空;  当其它表建立外键关联当前表时,只可以关联主键。   唯一索引,确切的说是唯一约束,   create unique index index_id on(id); 是用来限制当前表插入时建立唯一约束的字段不可重复。  一个是做为唯一标识,先唯一后标识;   另一个是插入时做唯一限制。    
   摘自 simonjay2007的专栏 bitsCN.com

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板