行稳致远,久久为功!
一个概念套着一个概念哦!码就是关键字,标识属性是也!
1.什么是主码和外码,请举例说明。
关键字也叫码!
首先,在一个关系中,能惟一标识元组的属性or最小属性集称为关系的候选码。
包含在任何一个候选码中的属性称为主属性!
主码(Primary Key):若一个关系中有多个候选码,则选其中的一个为主码。
外码(Foreign Key):设F是基本关系R的一个或一组属性,但不是R的码(不是候选码!不是关键码!可以是属于候选码这个最小属性集的一个码)。Ks是基本关系S的主码。如果F与Ks相对应,则称F是R的外码。
----------------------------》外码外码,外来的码哦!
举例:有两个二维表:
研究生表和导师表
研究生表:研究生编号,......导师编号;
导师表: 导师编号;
研究生编号是研究生表的主码;
导师编号是导师表的主码,是研究生表的外码;
研究生表是参照关系,导师表是被参照关系!
2.什么是实体完整性和参照完整性,请举例说明?
实体完整性(对主码中的)规则是指若属性A是基本关系R的主属性,则属性A不能取空值(NULL)。
参照完整性(对外码的一个限制)规则是:若F是基本关系R的外码,并与S的主码Ks相对应,则对于R中的每个元组在F上的值必须为:
取空值or等于S中某个元组的主码值。
eg:
导师表的关键字(候选码,主码)是导师编号,学生表的关键字是学号!
实体完整性讲的说,导师表中的导师编号是不能为空的!学生表中的学号是不能为空的!
参照完整性讲的说,学生表中的导师编号是学生表的外码!其取值可以为空,要么是导师表中已有的值!
3. 关系有哪些基本操作?它们分别对应哪些集合运算?
关系基本操作有:查询和更新。
查询:
关系内属性的指定
关系内元组的指定
关系的合并
更新:数据的增、删、改