key在列定义中已给定,则primary
key也可以只指定为key。这么做的目的是与其它数据库系统兼容。
primary
key是一个唯一key,此时,所有的关键字列必须定义为not
null。如果这些列没有被明确地定义为not
null,mysql应隐含地定义这些列。一个表只有一个primary
key。如果您没有primary
key并且一个应用程序要求在表中使用primary
key,则mysql返回第一个unique索引,此索引没有作为primary
key的null列。
不知道明白否?
key和value的本意是钥匙和值的意思,在计算机应用中通常被用作键值对,例如在map、json中等。
在键值对中,key是关键字,value是值,例如:
{"firstName": "Brett", "lastName": "McLaughlin"}
在这个json中,firstName和lastName是key,分别对应的value是Brett和McLaughlin。
扩展资料
由于key-value的键值对特性,被广泛应用键值对数据库中,如redis、memchaced,查询速度快、存放数据量大、支持高并发,非常适合通过主键进行查询,但不能进行复杂的条件查询,另外key-value型内存数据库还具有以下特性:
1、亚毫秒级延时。
2、语法简单,易用性强。
3、支持集群方式水平扩展。
4、支持哈希、列表、集合、有序集合等复杂的数据结构。有更多的应用场景
1、主键(primarykey)吧:一张表(关系)的一个列(属性)或多个列可以作为主键,但是前提是让这个列作主键,这个列就能保证该列下的各个行(元组)的值不能相同,比如说用姓名属性作主键的话,那么这个主键就不一定可以,如果有两个人是同样的名字的话,就不能做到该属性下的各个元组数据的值不同,如果用阿拉伯数字作主键就是一个很好的选择。
2、外键(foreign
key):一张表(关系)的列(属性)它同时存在表1和表2中,它不是表1的主键,而是表2的主键,就可以说他是表1的外键。
3、候选键(Candidate
Key):能唯一标识表(关系)中行(元组)的列(属性),则称该属性为候选键,也称
候选关键字
或
候选码;由此来看候选键可以不只一个,还看一看得出的就是主键同时它也是候选键。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)