第二章-数据库——关系运算.ppt

第二章-数据库——关系运算.ppt

ID:48144232

大小:2.03 MB

页数:73页

时间:2020-01-17

第二章-数据库——关系运算.ppt_第1页
第二章-数据库——关系运算.ppt_第2页
第二章-数据库——关系运算.ppt_第3页
第二章-数据库——关系运算.ppt_第4页
第二章-数据库——关系运算.ppt_第5页
资源描述:

《第二章-数据库——关系运算.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第二章:关系模型2021/8/4第二章:关系模型关系数据库结构基本关系代数运算附加关系代数运算扩展关系代数运算空(Null)值数据库更改2021/8/4关系例子2021/8/4基本结构假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。可以扩展到多个集合的情况。类似的例子有,如果A表示某学校学生的集合,B表示该学校所有课程的集合,则A与B的笛卡尔积表示所有可能的选课情况。给定一组域D1,D2,…,Dn,这些域中可

2、以有相同的。D1,D2,…,Dn的笛卡尔积为:D1×D2×…×Dn={(d1,d2,…,dn)|diDi,i=1,2,…,n所有域的所有取值的一个组合不能重复。一般地,给定集合D1,D2,….Dn,关系r是D1xD2x…xDn的子集。所以,关系是n-元组(a1,a2,…,an)集合,且aiDi2021/8/4基本结构例子:Ifcustomer_name={Jones,Smith,Curry,Lindsay,…}/*Setofallcustomernames*/customer_street={Main

3、,North,Park,…}/*setofallstreetnames*/customer_city={Harrison,Rye,Pittsfield,…}/*setofallcitynames*/Thenr={(Jones,Main,Harrison), (Smith,North,Rye), (Curry,North,Rye), (Lindsay,Park,Pittsfield)} isarelationovercustomer_namexcustomer_streetxcustomer_city202

4、1/8/4属性类型关系的每个属性有一个名字每个属性允许的取值的集合叫做属性的域属性值(通常)要求是原子的,即,不可分的“基本项”例如:属性值可以是一个账号,但不能是账号的集合如果所有域成员是原子的,则说域是原子的特殊值null是每个可能域的成员null值造成定义很多运算的复杂性在本章主要的讲解中,我们将暂时忽略null的影响2021/8/4关系模式A1,A2,…,An是属性R=(A1,A2,…,An)是关系模式例子:Customer_schema=(customer_name,customer_stree

5、t,customer_city)r(R)表示关系模式R上的关系r例子:customer(Customer_schema)2021/8/4关系实例关系当前值(关系实例)由一个表确定r的一个成员是元组(tuple),表示为表中一行关系术语/文件术语:属性/项,元组/记录,表/文件JonesSmithCurryLindsaycustomer_nameMainNorthNorthParkcustomer_streetHarrisonRyeRyePittsfieldcustomer_citycustomer属性(或

6、列)元组(或行)2021/8/4关系是无序的元组的顺序无关(元组存储顺序可以是任意的)例子:帐户关系中的无序元组2021/8/4数据库数据库由多个关系组成企业信息被划分成部分,每个关系存储一部分信息account:存储帐户信息depositor(存款人):存储关于哪个客户拥有哪个帐户的信息customer:存储客户的信息把所有信息存储在单个关系中,如bank(account_number,balance,customer_name,..)导致信息重复如,如果一个客户拥有两个帐户(哪个信息重复了?)需要nu

7、ll值如,一个没有存储账户的客户(也许有贷款,所以是客户)规范化理论负责处理如何设计关系模式2021/8/4customer关系2021/8/4depositor关系2021/8/4account关系2021/8/4branch关系2021/8/4loan关系2021/8/4borrower关系2021/8/4码/键(key)使KR(K:一个或多个属性集合)如果K值足以唯一地标识每个可能关系r(R)的一个元组,则K是R的一个超码(superkey)“可能关系r”意思是:能够存在于我们要建模的企业的关系r

8、例子:{customer_name,customer_street}and {customer_name}都是Customer的超码(如果没有重名客户)实际中,诸如属性customer_id将用来代替customer_name去唯一地标示customers,这里为了保持例子属性少,假定客户名字不重复。2021/8/4码(Cont.)如果K是最小超码,则K是候选码(candidatekey)例子:{customer_name}是

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。