做网站选哪家公司好,网站设计制作从哪,广州站,房产做网站是什么意思关系 域#xff1a;一组具有相同数据类型的值的集合#xff08;即取值范围#xff09; 笛卡尔积#xff1a;域上的一种集合运算。结果为一个集合#xff0c;集合的每一个元素是一个元组#xff0c;元组的每一个分量来自不同的域。 基数#xff1a;一个域允许的不同取值…关系 域一组具有相同数据类型的值的集合即取值范围 笛卡尔积域上的一种集合运算。结果为一个集合集合的每一个元素是一个元组元组的每一个分量来自不同的域。 基数一个域允许的不同取值个数。 笛卡尔积的基数每个域不同取值的个数的乘积或者说元组的个数 关系域的笛卡尔积的子集叫做在域上的关系域的个数叫做关系的目或度。即列数属性的数目注意广义上的笛卡尔积一般不能称为关系因为存在无效的数据。 关系表 列属性 行元组 候选码某一属性组的值能唯一地标示一个元组而其子集不能则称该属性组为候选码 主属性候选码中的属性都称为主属性注意主属性非空。 非主属性候选码之外的属性称为非主属性 全码关系模式的所有属性是这个关系模式的候选码 主码从候选码中选取一组能唯一确定一个元组的属性组作为主码。 三类关系 1基本关系实际存在的表是实际存储数据的逻辑表示 2查询表查询结果对应的表 3视图表由基本表或其他视图表导出的表是虚表不对应实际存储的数据。 注意关系数据模型中的关系必须是有限集合。 关系的每一个列必须附加一个属性名属性名不能重名这种方法取消了关系属性的有序性。 ① 列是同质的Homogeneous每一列中的分量来自同一个域是同一类型的数据 ② 不同的列可出自同一个域 其中的每一列称为一个属性 不同的属性要给予不同的属性名 ③ 列的顺序无所谓, 列的次序可以任意交换 ④ 任意两个元组的候选码不能相同相同就不是候选码了 ⑤ 行的顺序无所谓行的次序可以任意交换 ⑥ 分量必须取原子值不允许表中套表
关系模式 关系模式对关系的描述是静态的、稳定的 关系是关系模式在某一时刻的状态或内容是动态的、随时间不断变化的指后边的那个关系 关系模式的形式化表示
//关系模式
R(U, D, DOM, F)
R 关系名
U 组成该关系的属性名集合
D 属性组U中属性所来自的域
DOM 属性向域的映象集合
F 属性间的数据依赖关系集合//可以简记为
R (U) 或 R (A1A2…An)
R: 关系名
A1A2…An : 属性名
注域名及属性向域的映象常常直接说明为属性的类型、长度
关系数据库 在一个给定的应用领域中所有关系的集合构成一个关系数据库 关系数据库的型与值不是关系的型与值 1关系数据库的型也称关系数据库模式是对关系数据库的描述 2关系数据库的值是关系模式在某一时刻对应的关系的集合简称为关系数据库
基本的关系操作 常用的基本操作 **查询**选择、投影、连接、除、并、交、差 **数据更新**插入、删除、修改 **5种基本操作**选择、投影、并、差、笛卡尔积 注意不算交 关系操作的特点 集合操作方式操作的对象和结果都是集合一次一集合的方式操作对象是集合操作结果亦为集合。 关系的完整性
实体完整性即主属性非空
若属性A是基本关系R的主属性则属性A不能取空值
参照完整性 关系间的引用关系与关系之间存在着联系 外码设F是基本关系R的一个或一组属性但不是关系R的主码Ks是基本关系S的主码。如果F与Ks相对应则称F是基本关系R的外码外码所在的基本关系叫做参照关系Ks所在的关系叫做被参照关系。 注 1R、S不一定是不同的关系。 2目标关系S的主码Ks 和参照关系的外码F必须定义在同一个或一组域上 3外码并不一定要与相应的主码同名当外码与相应的主码属于不同关系时往往取相同的名字以便于识别 4外码的取值如果外码是参照关系的主属性则不能为空实体完整性只能为被参照关系中主码的取值。如果外码不是参照关系的主属性则可以取空或者被参照关系主码的取值 两个不变性指实体完整性和参照完整性
用户定义完整性 针对某一具体关系数据库的约束条件反映某一具体应用所涉及的数据必须满足的语义要求 关系模型应提供定义和检验这类完整性的机制以便用统一的系统的方法处理它们而不要由应用程序承担这一功能
关系代数
传统的集合运算 传统的关系运算 并、交、差、笛卡尔积 操作对象关系 操作方式同数学中的并、交、差、笛卡尔积。只不过操作对象的元素是元组。另外需要注意能进行运算所需要满足的条件。 对于并、交、差需要满足的关系1属性的数目相同2相应的属性取自同一个域
专门的关系运算
常见的关系运算有选择、投影、连接、除
选择
在关系R中选择满足给定条件的诸元组。
表达式$\sigma_F(R) {t | t \in R \and F(t) true}$
F为选择条件是一个逻辑表达式基本形式为$X_1 \theta Y_1$其中$\theta$为大于、小于、等于、不等于等。
举例 选择$\sigma_{Sdept IS}(Student)$
投影
从R中选择出若干属性列组成新的关系
表达式$\prod_{A} (R) {t[A] | t\in R}$
A为属性列即从R中选择A中属性列的元组当然选择之后可能会删掉一些元组因为避免重复。
举例还是上方的关系经过投影$\prod_{Sname, Sdept}(Student)$结果如下 连接 1**一般连接**从两个关系的笛卡尔积中选取属性间满足一定条件的元组
1表达式$R\bowtie_ {A \theta B} S {t_r^ \frown t_s | t_r \in R \and t_s \in S \and t_r[A] \theta t_s[B] }$
2A和B分别为R和S上度数相等且可比的属性组
3$\theta$表示比较运算符
4连接运算从R和S的广义笛卡尔积R×S中选取R关系在A属性组上的值与S关系在B属性组上值满足比较关系θ的元组
2**等值连接**当上述的运算符为等于号的时候
1含义从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组即等值连接为
2表达式$R\bowtie_ {A B} S {t_r^ \frown t_s | t_r \in R \and t_s \in S \and t_r[A] t_s[B] }$
3仍然是从行的角度进行运算而不涉及列
4属性组可以不同
3**自然连接**一种特殊的等值连接
1与等值连接的不同两个关系R和S必须具有相同的属性组
2将结果中相同的属性列去掉
3表达式$R\bowtie S {t_r^ \frown t_s | t_r \in R \and t_s \in S \and t_r[A] t_s[B] }$
4由自然连接所引发的一系列问题
1悬浮元组在做自然连接的时候被舍弃的元组
2外连接如果把舍弃的元组也保存在结果关系中而在其他属性上填空值(Null)这种连接就叫做外连接外连接 左外连接 右外连接
3左外连接如果只把左边关系R中要舍弃的元组保留就叫做左外连接
4右外连接如果只把右边关系S中要舍弃的元组保留就叫做右外连接
除
1除运算的意义
1假设关系RSRSR关系拥有的属性是姓名S关系拥有的属性是课程RS关系拥有的属性是姓名和课程的联系则RS/S表示选出所有至少选了表S中所列课程的学生的元组。
2如下图 注RS/S得到的关系张三和李四构成的表表示选修了全部课程的同学的集合。
举例
R
ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1
S:
BCDb1c2d1b2c1d1b2c3d2
R÷S
Aa1(1) 找S与R的共同属性即公式中的Y属性 (2)计算R中每个X属性的象集如果某个象集包含S在Y属性上的投影则该属为R/S结果中的一个值。 解答如下
在关系R中A可以取四个值{a1,a2,a3,a4}其中
a1的象集为{b1,c2b2,c3b2,c1}
a2的象集为{b3,c7b2,c3}
a3的象集为{b4,c6}
a4的象集为{b6,c6}
S在B,C上的投影为{(b1,c2),(b2,c3),(b2,c1)}。
显然只有R的象集a1包含S在B,C属性组上的投影所以R÷S{a1}。