【转】数据库中的主键、关键字、索引

【1】

数据库中主键是:
主键是在一个表上定义的唯一键中的一个,而且该键被选为最重要的键。一个表上只能有一个主键。 

会自动为主键创建主索引。数据库管理器使用主索引来有效地访问表行,且主索引允许数据库管理器强制主键的唯一性。(也可以在非主键列上定义索引,以便在处理查询时高效率地访问数据。) 

关键字就是为了方便编程人员在打开数据库的时候知道每个表所代表的值是什么。主要起到注释作用

索引可以提高查询的速度. 
其实主键和索引都是键,不过主键是逻辑键,索引是物理键,意思就是主键不实际存在,而索引实际存在在数据库中,主键一般都要建,主要是用来避免一张表中有相同的记录,索引一般可以不建,但如果需要对该表进行查询操作,则最好建,这样可以加快检索的速度 

【2】

楼上说的很多,但是不宜理解,而且有些偏差。
 我用白话说一下,

  首先说说关键字,关键字不是数据库才有的,所有编程语言都有,说白了就是数据库自己定义和使用的一些单词,如果使用者拿这些单词做自己的表名或是字段名,那么数据库会提示你,你用的这些都是关键字,不能用。


  再说说主键,主键就是你一张数据表中,保证你每行数据都是唯一的那个列,这个列不能为空,也不能重复出现相同的值,你可以理解成人的身份证号码,网卡的地址号码,以及公司的税务号码,他们都是唯一而且必须有的。

  最后说说索引,索引其实可以理解成一本字典的目录,通过目录我们很快的能找到我们要找的那一页,如果没有目录,我们就要一篇一篇的翻,很明显,使用索引的表要比没有使用索引的标的查询速度快几十倍,如果数据量达到几十万条或是几亿条,那就是几百倍几千倍了。
原文地址:https://www.cnblogs.com/lzhitian/p/2571284.html