数据库中主键、主码、主属性、关键字、候选关键字、码的区别

主键、主码、主属性、关键字、候选关键字、码,概念太多看着烦,请用精简的解释区分一下,越简单越好。
比如:主码=主键。
我给个例子,告诉我以上名词对应下面的哪个?题目来自CSDN,谢谢。
已知关系R如下表所示
R
A B C D
a b c d
a c d e
b d e f
a d c g
b c d g
c b e g

1、关系:

主码=主键=主关键字;

关键字=候选码;

候选关键字=候选码中除去主码的其他候选码;

2、理解:

主码(主键、主关键字):若一个关系有多个候选码,选择其中一个为主码。

候选码(关键字):某一属性组的值能唯一标识一个元组而其子集不能(去掉任意一个属性都不能标识该元组),则称该属性组为候选码(补充元组:表中的一行即为一个元组)。

主属性:候选码包含的属性(一个或多个属性)。

码:唯一标识实体的属性或属性组合称为码。

扩展资料:

常见的数据库字段类型如下:

1、Char固定长度字符串最大长度2000bytes。

2、VARCHAR2可变长度字符串最大长度4000bytes,索引最大长度749。

3、NCHAR基于字符集NCHAR固定长度字符串的最大长度2000bytes。

4、Nvarchar2基于字符集的可变长度字符串最大长度4000bytes。

5、DATE日期(日-月-年)DD-MM-YY(HH-MI-SS)经过严格测试,无千虫问题。

6、LONG超长字符串的最大长度为2G(231-1),足以存储大多数标题。

7、RAW原始定长二进制数据最大长度2000字节可存储多媒体图像声音等。

8、LONG RAW 长原始可变长度二进制数据最大长度2G,同上。

9、BLOB二进制数据最大长度4G CLOB字符数据最大长度4G。

10、NCLOB基于字符集4G的nclb最大字符数据长度。

11、BFILE数据库外存储的BFILE二进制数据的最大长度为4G。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-09

主码: 

我们在建立数据库的时候,需要为每张表指定一个主码,主码也叫主键.

比如,你有一个员工的二维关系(表) , 大概这几个属性:员工表:系统内标识码,身份证号,工号,姓名,出生日期,所在部门,理论上讲, 可以有三个码:

Key1 : 系统内部标识,这个是数据库设计时,确定的唯一标识。

Key2 : 身份证号,理论上来讲,这个是全国唯一,但是经常听说有重复的。

Key3 : 工号,公司内部定的,也不应该 重复。

属性:

属性就是这个二维关系(这张表)的列(字段),主属性,就是上述三个码中所包含的这些列:系统内部标识、身份证号、工号,非主属性,就是除了这三个属性之外的其他所有属性。

扩展资料:

常用的数据库字段类型如下

CHAR 固定长度字符串 最大长度2000 bytes 

2.VARCHAR2 可变长度的字符串 最大长度4000 bytes 可做索引的最大长度749 

3.NCHAR 根据字符集而定的固定长度字符串 最大长度2000 bytes 

4.NVARCHAR2 根据字符集而定的可变长度字符串 最大长度4000 bytes 

5.DATE 日期(日-月-年) DD-MM-YY(HH-MI-SS) 经过严格测试,无千虫问题 

6.LONG 超长字符串 最大长度2G(231-1) 足够存储大部头著作 

7.RAW 固定长度的二进制数据 最大长度2000 bytes 可存放多媒体图象声音等

8.LONG RAW 可变长度的二进制数据 最大长度2G 同上

9.BLOB 二进制数据 最大长度4G CLOB 字符数据 最大长度4G 

10.NCLOB 根据字符集而定的字符数据 最大长度4G 

11.BFILE 存放在数据库外的二进制数据 最大长度4G

本回答被网友采纳
第2个回答  2019-06-24

(首先在关系数据库中,部分摘抄自数据库系统概论(第五版))

主码=主键=主关键字,关键字=候选码 候选关键字=候选码中除去主码的其他候选码

码:唯一标识实体的属性或属性组合称为码

候选码(关键字):某一属性组的值能唯一标识一个元组而其子集不能(去掉任意一个属性都不能标识该元组),则称该属性组为候选码(补充元组:表中的一行即为一个元组)

主属性:候选码包含的属性(一个或多个属性)

主码(主键、主关键字):若一个关系有多个候选码,选择其中一个为主码

(欢迎大拿补充指正)

第3个回答  2015-03-01
码:代表数目的符号
主码 我们在建立数据库的时候,需要为每张表指定一个主码,主码也叫主键。
所谓主码就是在实体集中区分不同实体的候选码。
一个实体集中只能有一个主码,但可以有多个候选码。
必须注意两点:
1.主码的选择必须慎重。
例如:人的姓名是不可以做主码的,因为可能有多个人重名,而身份证可以做主码。
2.主码的选择应该是那些从不或极少变化的属性。
例如:一个人的地址就不应该作为主码的一部分,因为它很可能变化

候选码 若关系中的某一属性组的值能唯一的标识一个元组,而其任何真子集都不能再标识,则称该属性组为候选码。
例如:在学生实体中,“学号”是能唯一的区分学生实体的,同时又假设“姓名”、“年龄”的属性组合足以区分学生实体,那么{学号}和{姓名,年龄}都是候选码

主属性 包含在任一候选关键字中的属性称主属性。

非主属性 不包含在主码中的属性称为非主属性。
非主属性是相对与主属性来定义的。
例如:在关系——学生(学号,姓名,年龄,性别,班级)中,主码是“学号”,那么其他的“姓名”、“年龄”、“性别”、“班级”就都可以称为非主属性本回答被网友采纳
相似回答