预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共47页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第2章关系数据库基本原理本章内容2.1关系数据库概述关系数据库基本概念 定义:关系数据库就是一些相关的二维表和其他数据库对象的集合。 在这个定义中明确,关系数据库中的所有信息都存储在二维表格中;一个关系数据库可能包含多个表;除了这种二维表外,关系数据库还包含一些其他对象,如视图等。Page5/313.属性 二维表的每一列在关系中称为属性(Attribute),每个属性都有一个属性名,各个属性的取值称为属性值。每个属性有一定的取值范围,称为值域。 4.关键字 关系中能惟一区分、确定不同元组的属性或属性组合,称为该关系的一个关键字。关键字又称为键或码(Key)。5.外部关键字 如果关系中某个属性或属性组合并非关键字,但却是另一个关系的主关键字,则称此属性或属性组合为本关系的外部关键字或外键(ForeignKey)。在关系数据库中,用外部关键字表示两个表间的联系。例:请指出下面两个关系模式的主键以及外键 学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名)关系数据库基本特征 有坚实的理论基础 数据结构简单、易于理解 对用户提供了较全面的操作支持 得到了众多开发商的支持 2.2关系代数的基本原理3.集合的笛卡尔乘积 设A1、A2、…、An为任意集合,A1、A2、…、An的笛卡尔乘积记做: A1×A2×…×An, 并且定义D=A1×A2×…×An={(a1,a2,…,an)|ai∈Ai,i=1,2,…,n},其中(a1,a2,…,an)是一个元组,它的每个元素ai取自对应的集合Ai。 例如,设A={1,2},B={a,b}, 则A×B={(1,a),(1,b),(2,a),(2,b)} 。 4.关系 关系是一个集合,其组成元素是元组而不是组成元组的元素。关系运算:对二维表格进行运算的机制。 1.并 设A、B同为n元关系,则A、B的并也是一个n元关系,记作A∪B。 2.交 设A、B同为n元关系,则A、B的交也是一个n元关系,记作A∩B。A∩B包含了所有同属于A、B的元组。 3.差 设A、B同为n元关系,则A、B的差也是一个n元关系,记作A-B。A-B包含了所有属于A但不属于B的元组。例2-1 设A={(湖南,长沙),(河北,石家庄),(陕西,西安)}, B={(湖北,武汉),(广东,广州),(广东,深圳),(陕西,西安)},求A∪B、A∩B、A-B。 显然,A、B是表示城市和所在省的关系。 A∪B={(湖南,长沙),(河北,石家庄),(陕西,西安),(湖北,武汉),(广东,广州),(广东,深圳)} A∩B={(陕西,西安)} A-B={(湖南,长沙),(河北,石家庄)}4.连接 设A是一个包含m个元组的k1元关系,B是一个包含n个元组的k2元关系,则A、B的连接是一个包含m×n个元组的k1+k2元关系,记作A×B。 5.投影 设R=R(A1,A2,…,An)是一个n元关系,{i1,i2,…,im}是{1,2,…,n}的一个子集,并且i1<i2<…<im,定义: 称π(R)是R在上的一个投影。 6.选择 设R={(a1,a2,…,an)}是一个n元关系,S是关于(a1,a2,…,an)的一个条件,R中所有满足S条件的元组组成的子关系S(R),称为R的一个选择。例2-2设R1=R1(姓名,性别)={(钱达理,男),(东方牧,男)}, R2=R2(所在单位,住址)={(总经理办,东风路78号),(销售部,五一北路25号)}, 求 (1)R=R1×R2。 (2)R在(姓名,所在单位,住址)的投影。 (3)根据表2-1,求R关系的一个选择。2.3关系模式的分解要解决上述3个问题,需要把表2-2进行分解,表中前3列独立建立一个表,指定供应商代码作为关键字,并删除相同的行;后3列独立,引入供应商代码列作为外键,并增加一个订货日期列,供应商代码和订货日期的组合作为第2个表的关键字。经过这样处理后,上述异常问题就完全解决了。函数依赖的基本概念 定义1设R=R(A1,A2,…,An)是一个关系模式, X∈{A1,A2,…,An},Y∈{A1,A2,…,An}, 即X和Y是R的属性子集, T1、T2是R的两个任意元组,即 T1=T1(A1,A2,…,An),T2=T2(A1,A2,…,An),如果当T1(X)=T2(X)成立时,总有T1(Y)=T2(Y),则称X决定Y,或称Y函数依赖于X。记为:X→Y。例:R(U)为Student(sNo,sName,sAge,sDept) 选取X={sNo},Y={sAge},Z={sDept} R(X)R(Y)R(Z) 结论:X→Y,X→Z,Y→Z定义2R,X,Y如定义1所设,如果X→Y成立,但对X的任意真子集X1