唯一索引与主键索引的比较

唯一索引
唯一索引不允许两行具有相同的索引值。
如果现有数据中存在重复的键值,则大多数数据库都不允许将新创建的唯一索引与表一起保存。当新数据将使表中的键值重复时,数据库也拒绝接受此数据。例如,如果在 employee 表中的职员姓氏(lname) 列上创建了唯一索引,则所有职员不能同姓。

主键索引
主键索引是唯一索引的特殊类型。
数据库表通常有一列或列组合,其值用来唯一标识表中的每一行。该列称为表的主键。
在数据库关系图中为表定义一个主键将自动创建主键索引,主键索引是唯一索引的特殊类型。主键索引要求主键中的每个值是唯一的。当在查询中使用主键索引时,它还允许快速访问数据。

它们的一些比较:
(1)对于主健/unique constraint , oracle/sql server/mysql等都会自动建立唯一索引;
(2)主键不一定只包含一个字段,所以如果你在主键的其中一个字段建唯一索引还是必要的;
(3)主健可作外健,唯一索引不可;
(4)主健不可为空,唯一索引可;
(5)主健也可是多个字段的组合;
(6)主键与唯一索引不同的是:
a.有not null属性;
b.每个表只能有一个。

 

1、主键

主键ID,主键既是约束也是索引,同时也用于对象缓存的键值。

2、索引

       *组合或者引用关系的子表(数据量较大的时候),需要在关联主表的列上建立非聚集索引(如订单明细表中的产品ID字段、订单明细表中关联的订单ID字段)

       *索引键的大小不能超过900个字节,当列表的大小超过900个字节或者若干列的和超过900个字节时,数据库将报错。

       *表中如果建有大量索引将会影响INSERT、UPDATE和DELETE语句的性能,因为在表中的数据更改时,所有的索引都将必须进行适当的调整。需要避免对经常更新的表进行过多的索引,并且索引应保持较窄,就是说:列要尽可能的少。

       *为经常用于查询的谓词创建索引,如用于下拉参照快速查找的code、name等。在平台现有下拉参照的查询sql语句中的like条件语句要改成不带前置通配符。还有需要关注Order By和Group By谓词的索引设计,Order By和Group By的谓词是需要排序的,某些情况下为Order By和Group By的谓词建立索引,会避免查询时的排序动作。

       *对于内容基本重复的列,比如只有1和0,禁止建立索引,因为该索引选择性极差,在特定的情况下会误导优化器做出错误的选择,导致查询速度极大下降。

 

      *当一个索引有多个列构成时,应注意将选择性强的列放在前面。仅仅前后次序的不同,性能上就可能出现数量级的差异。

       *对小表进行索引可能不能产生优化效果,因为查询优化器在遍历用于搜索数据的索引时,花费的时间可能比执行简单的表扫描还长,设计索引时需要考虑表的大小。记录数不大于100的表不要建立索引。频繁操作的小数量表不建议建立索引(记录数不大于5000条)

 扩展阅读:

http://topic.csdn.net/t/20041108/15/3532352.html

转载于:https://www.cnblogs.com/ymj0906/p/4240856.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/492602.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文读懂图像传感器

来源:传感器技术图像传感器是各种工业及监控用相机、便携式录放机、数码相机,扫描仪等的核心部件。目前,这个快速增长的市场现在已经延伸到了玩具、手机、PDA、汽车和生物等领域。图像传感器图像传感器定义及种类图像传感器应用成像物镜将外界…

MyEclipse配置Tomcat 6

打开首选项 禁用MyEclipse自带的Tomcat 6 下载apache-tomcat-6.0.29.tar.gz 地址:http://yunpan.cn/cKg6kq2RmjdUB 提取码 986a 地址:http://pan.baidu.com/s/1kTDqZiv 下载后只需要解压即可使用。 配置下载的Tomcat 6地址 转载于:https://www.cnblogs.…

一文读懂5G:颠覆生活资费天价?

来源:网易手机当我们还在习惯于用非智能机慢速浏览web网页的时候,3G网络悄然而至,当我们认为3G已经能够满足日常所需的时候,4G已经走入了我们的生活,而当我们直到今天,依然感叹于4G的快速时,更加…

6分钟完成ImageNet训练,NVIDIA创下六项AI性能新记录!

来源:智东西自AlphaGo引爆人工智能大潮以来,其中的大热门——机器学习,不仅在计算机视觉、语音处理等领域不断突破技术的瓶颈,而且开始快速普及到安防、金融、医疗等多个传统行业。从刷脸支付到个性化推荐,机器学习已经…

在POM 4中,dependency中还引入了scope可以使用5个值

在POM 4中&#xff0c;<dependency>中还引入了<scope>&#xff0c;它主要管理依赖的部署。目前<scope>可以使用5个值&#xff1a; * compile&#xff0c;缺省值&#xff0c;适用于所有阶段&#xff0c;会随着项目一起发布。 * provided&#xff0c;类似compi…

一文看尽2019 MWC十大新机

来源&#xff1a;网易智能、网易手机一年一度的世界移动通信大会&#xff08;MWC 2019&#xff09;在巴塞罗那正式拉开了帷幕&#xff0c;今年的MWC因为有了折叠屏的加入&#xff0c;看点更足&#xff0c;同时随着5G技术与5G设备的推进&#xff0c;整场大会逛下来&#xff0c;相…

git add 命令的一个习惯用法:逐个挑选改动

普通的git命令入门级的介绍中一般都用“git add .” 或者“git add -a”, 而在实际工作中这种用法稍不注意会给你带来麻烦&#xff0c;经常提交你不希望的改动&#xff1a;一些自动编译成成的文件或者一些debug目的写入的log输出代码等等。 随着经验值的提高&#xff0c;某一天…

程序猿接私活经验总结,来自csdn论坛语录

下面为网上摘录&#xff0c;以做笔记&#xff1a; 但是到网上看看&#xff0c;似乎接私活也有非常多不easy&#xff0c;技术问题本身是个因素&#xff0c;还有非常多有技术的人接私活时被骗&#xff0c;或者是合作到最后以失败告终&#xff0c;所以想请有经验的大侠们出来指点一…

《世界因你而不同-李开复自传》读书笔记(1/3)

《世界因你而不同-李开复自传》读书笔记&#xff08;1/3&#xff09;在中国&#xff0c;父母对孩子特别关爱&#xff0c;生怕孩子受一点伤害&#xff0c;不愿让孩子冒险尝试与众不同的东西。其实&#xff0c;孩子从小就需要独立性、责任心、选择力和判断力。 如果我们将学过的东…

Unity(一)Unity脚本程序开发

最近实验室有AR的项目&#xff0c;需要用Unity进行开发&#xff0c;一边学习一边把知识总结下来。在开始项目之前讨论过项目的技术方案&#xff0c;用Unity开发还是用Unreal开发&#xff0c;本人在两种游戏引擎上都有过初步的接触&#xff0c;认为Unreal作为后起之秀确实在某种…

新型人造DNA结构信息密度加倍

来源&#xff1a;中国科学报脱氧核糖核酸&#xff08;DNA&#xff09;中存储着遗传代码。它由4种核苷酸组成&#xff0c;以4个不同字母表示。美国研究人员最新合成一种由8个字母组成的新型DNA结构。其信息存储密度加倍&#xff0c;未来有望应用于合成生物等领域。DNA是存储及传…

android studio升级时提示 Connection failed. Please check your network connection and try again

原文地址 http://www.eyeapk.com/android-studio-update.html Mac OSX中修改文件路径为 bin/idea.vmoptions &#xff0c;添加如下内容&#xff0c;如果无效修改http为https试试看 -Djava.net.preferIPv4Stacktrue -Didea.updates.urlhttp://dl.google.com/android/studio/patc…

未来的农业没有农民

来源 &#xff1a; science robotics作者 &#xff1a;Senthold Asseng、Frank Asche编译&#xff1a;机器之能 微胖摘要&#xff1a;本文取自最新一期Science Robotics 的Future farms without farmers 一文。文章认为&#xff0c;未来农场的所有组成部分已经存在。随着时间的…

模式识别与机器学习笔记(一)

本系列博文是对研一课程《模式识别与机器学习》的随堂笔记&#xff0c;希望将老师所讲的与自己的见解记录下来&#xff0c;方便加深自己的理解以及以后复习查看&#xff0c;笔记完全按照老师所讲顺序&#xff0c;欢迎交流。 一、模式识别与机器学习的基本问题 机器学习主要解…

MYSQL 定时任务

设置定时任务时&#xff0c;首先将event_scheduler设置为1&#xff0c;以开启事件计划功能。 1.开启功能----------------------------------------执行命令 set global event_scheduler1; select event_scheduler;----------------------------------------OR ---------------…

重磅推荐:中国人工智能趋势报告(完整版)

未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能&#xff0c;互联网和脑科学交叉研究机构。未来智能实验室的主要工作包括&#xff1a;建立AI智能系统智商评测体系&#xff0c;开展世界人工智能智商评测&#xff1b;开展互联网&#xff08;城市&#xff09;云…

模式识别与机器学习笔记(二)机器学习的基础理论

机器学习是一门对数学有很高要求的学科&#xff0c;在正式开始学习之前&#xff0c;我们需要掌握一定的数学理论&#xff0c;主要包括概率论、决策论、信息论。 一、极大似然估计&#xff08;Maximam Likelihood Estimation&#xff0c;MLE &#xff09; 在了解极大似然估计之…

POJ 3660 Cow Contest【传递闭包】

解题思路&#xff1a;给出n头牛&#xff0c;和这n头牛之间的m场比赛结果&#xff0c;问最后能知道多少头牛的排名。 首先考虑排名怎么想&#xff0c;如果知道一头牛打败了a头牛&#xff0c;以及b头牛打赢了这头牛&#xff0c;那么当且仅当ab1n时可以知道排名&#xff0c;即为此…

Cell Stem Cell:研究人员开发出大脑类器官用于研究认知障碍!

图片来源&#xff1a;Cell Stem Cell来源&#xff1a;细胞摘要&#xff1a;来自耶鲁大学的研究人员近日在实验室培养皿中模拟了两种大脑结构以及它们之间的相互作用&#xff0c;为揭示神经精神疾病的起因带来了曙光。耶鲁大学遗传学副教授In-Hyun Park及其团队创造了大脑中丘脑…

图像处理与图像识别笔记(一)

本系列是研一课程《图像处理与图像识别》的随堂笔记&#xff0c;主要内容是数字图像处理方面&#xff0c;根据老师的讲课内容与自己的理解所书写&#xff0c;还会有一些具体实现的代码&#xff0c;基于Python&#xff0c;欢迎交流。本篇主要介绍图像处理与图像识别的基础知识。…