• 498.40 KB
  • 2022-04-22 11:51:58 发布

数据库系统及应用(戴小平)课后答案.doc

  • 36页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'《数据库系统及应用》,戴小平,中国科技大学出版社,2010.8.第1章数据库基础1.1习题P22A.11.2试述数据库、数据库系统、数据库管理系统这几个概念。答案:B.1数据库数据库是关于企业或组织的全部数据的集合。数据库包含两部分:一是对数据结构的所有描述,存储于数据字典之中,二是数据数据本身,它是数据库的主体。B.2数据库系统数据库系统是指在计算机系统中引入数据库后的系统构成,由数据库、数据库管理系统、运行环境、数据库管理员和用户构成。B.3数据库管理系统数据库管理系统是位于用户与操作系统之间的一层数据管理软件,负责数据库管理和维护的软件系统。A.21.3试述数据管理技术的三个阶段,及其特点。答案:第36页 B.1手工管理阶段数据的组织和管理完全靠程序员手工完成,因此称为手工管理阶段。这个阶段数据的管理效率很低。C.1特点:D.1数据不保存。D.2应用程序管理数据。D.3数据不共享。D.4数据不具有独立性。B.2文件系统阶段在文件系统中,按一定的规则将数据组织成为一个文件,应用程序通过文件系统对文件中的数据进行存取和加工。C.1特点:D.1数据可以长期保留。D.2数据不属于某个特定的应用程序。D.3文件组织形式的多样化。D.4数据冗余度大。D.5数据不一致性。D.6数据联系弱。B.3数据库系统阶段第36页 数据库技术克服了以前所有管理方式的缺点,试图提供一种完善的、更高级的数据管理方式。它的基本思想是解决多用户数据共享的问题,实现对数据的集中统一管理,具有较高的数据独立性,并为数据提供各种保护措施。C.1特点:D.1采用数据模型表示复杂的数据结构。D.2数据的共享性高,冗余度低,易扩充。D.3数据具有较高的独立性。D.4数据由DBMS统一管理和控制。A.21.4什么是数据模型及其三要素?答案:数据模型就是在数据世界中对概念模型的数据描述。数据模型的三要素:数据结构、数据操作、完整性约束A.31.7大学有若干个学院,每个学院有若干个系,每个系有若干个教师,每个教师开若干门课,每门课可以由不同的教师来教;学生属于不同的班级,班级属于不同的系;每个学生可以选修若干门课,每门课可以由不同的学生来选。试用E-R图来表示该大学的概念模型。答案:第36页 第36页 第1章关系数据库1.1习题P48-50A.12.2关系的完整性规则是那几个?分别给出规则。答案:B.1实体完整性规则若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值。B.2参照完整性规则若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码K相对应,则对于R中每个元组在F上的值必为:ln取空值(F中的每个属性值均为空值)。ln等于S中的某个元组的主码值。B.3用户定义的完整性规则包括:(1)列值非空(NOTNULL短语)(2)列值惟一(UNIQUE短语)(3)列值需满足一个布尔表达式(CHECK短语)A.22.3第36页 简述关系模型的三个组成部分。答案:关系模型有三个要素,即关系数据结构、关系操作集合和关系完整性约束。A.12.6设有四个关系R,S,T,U如图所示:第36页RABC785479553SABC785791542TCD5337UABCD145314375421第36页第36页 计算:①R∪S,R-S,R∩S,U÷T,R×T3>1②RT,RT,σC<3(U),∏4,3(U)③∏1,3(σD<4(SU)),∏4,2(σB>5(R×T))答案:①ABR.CT.CD785537853747953479375535355337R×T第36页 ②③T.CB58385737∏4,2(σB>5(R×T))A.12.7第36页 设有一个学生借书SJB数据库,包括S,B,SJB三个关系模式:S(SNO,SNAME,SAGE,SSEX,SDEPT)B(BNO,BNAME,BWRI,BPUB,BQTY,BPRI)SJB(SNO,BNO,BT,ST,QTY,FEE)学生表S由学生号(SNO),学生名(SNAME),年龄(SAGE),性别(SSEX),系部(SDEPT)组成;图书表由图书号(BNO),图书名(BNAME),作者(BWRI),出版社(BPUB),数量(BQTY),价格(BPRI)组成;学生借阅表由学生号(SNO),图书号(BNO),借阅时间(BT),归还时间(HT),借出数量(QTY),欠费情况(FEE)组成。试用关系代数、ALPHA语言、QBE语言完成下列查询并给出结果:①检索S1学生的借书情况。②检索计算机系学生的借书情况。③检索学生李明借的图书的书名和出版社情况。④检索李明借的数据库原理书欠费情况。⑤检索至少借了王小川同学所借的所有书的学生号。⑥检索12月31号归还的图书情况。⑦检索清华大学出版社出版的30元以下的图书情况。第36页 S表SNOSNAMESAGESSEXSDEPTS1李明18男计算机系S2王建18男计算机系S3王丽17女计算机系S4王小川19男数理系S5张华20女数理系S6李晓莉19女数理系S7赵阳21女外语系S8林路19男建筑系S9赵强20男建筑系B表BNOBNAMEBWRIBPUBBQTYBPRICEB1数据通信赵甲南北出版社1028B2数据库钱乙大学出版社534B3人工智能孙丙木华出版社738第36页 B4中外建筑史李丁木华出版社452B5计算机英语周戊大学出版社725B6离散数学吴巳木华出版社228B7线性电子线路郑庚南北出版社334B8大学物理王辛南北出版社428SJB表SNOBNOBTHTQTYFEES1B108/04/200812/09/200813.5S1B210/07/200811/07/200810S1B310/07/20081S2B209/04/200811/07/200810S3B409/04/200812/31/200812.7S3B306/11/200809/08/200820S4B209/11/200812/10/200810第36页 S4B109/11/20081S5B509/06/200812/31/200810S6B705/14/200805/31/200810S7B405/27/200809/16/2008111.2S7B709/18/200810/26/200810S9B811/21/200812/31/200810S9B811/27/20081答案:①检索S1学生的借书情况。σSno="S1"(SJB)②检索计算机系学生的借书情况。πSNO,BNO,BT,HT,QTY,FEE(σSDEPT="计算机"(SJB∞S))第36页 ③检索学生李明借的图书的书名和出版社情况。πBNAME,BPUB(σSNAME="李明"(S∞SJB∞B))BNAMEBPUB数据通信南北出版社数据库大学出版社人工智能木华出版社④检索李明借的数据库原理书欠费情况。πFEE(σSNAME="李明"∧BNAME=’数据库’(S∞SJB∞B))⑤检索至少借了王小川同学所借的所有书的学生号。πSNO,BNO((S∞SJB))÷πBNO(σSNAME="王小川"(S∞SJB))⑥检索12月31号归还的图书情况。σHT="12/31/2008’(SJB))第36页 ⑦检索木华出版社出版的30元以下的图书情况。σBPUB="木华大学出版社"∧BPRICE<30(B)BNOBNAMEBWRIBPUBBQTYBPRICEB6离散数学吴巳木华出版社228第36页 第1章关系数据库标准语言SQL1.1习题P122A.14.2试指出SQL语言中基本表和视图的区别和联系是什么?答案:n虚表,是从一个或几个基本表(或视图)导出的表n只存放视图的定义,不会出现数据冗余n基表中的数据发生变化,从视图中查询出的数据也随之改变n视图一经定义,就可以和基本表一样被查询,被删除,但对视图的更新(增加,删除,修改)操作则有一定的限制。n由于视图是虚表,所以SQL对视图不提供建立索引的语句。nSQL一般也不提供修改视图定义的语句(有此需要时,只要把原定义删除,重新定义一个新的即可,这样不影响任何数据)。A.24.6第36页 事务的特性是什么?答案:事务的ACID特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持续性(Durability)。A.1*4.10已知有三个关系如下,请用SQL语言完成下面各项操作:图书(总编号,分类号,书名,作者,出版单位,单价)读者(借书证号,单位,姓名,性别,职称,地址,借阅册数)借阅(借书证号,总编号,借书日期)用SQL语句完成以下各项操作。(1)创建借阅基本表,同时指定主码和外码。(注:借书证号为字符型,宽度为3;总编号为字符型,宽度为6;借书日期为日期时间型)。(2)给读者表增加约束‘性别只能为男或女’。(3)为图书表按总编号降序创建唯一索引。(4)查找‘清华大学出版社’的所有图书及单价,结果按单价降序排列。第36页 (5)查找单价在17元以上已借出的图书。(6)查找藏书中比‘清华大学出版社’的所有图书单价都高的图书总编号。(7)统计藏书中各个出版单位的册数和价值总和,显示册数在5本以上的出版单位、册数和价值总和。(8)查找借阅了借书证号为‘006’的读者所借所有图书的读者借书证号、姓名和地址。(9)在借阅基本表中插入一条借书证号为‘008’,总编号为‘010206’,借书日期为2000年12月16日的记录。(10)将‘高等教育出版社’的图书单价增加5元。(11)删除所有作者为‘张三’的图书借阅记录。(12)创建‘计算机系’借阅‘清华大学出版社’图书的读者视图。(13)授予张军对借阅表有SELECT的权力,对其中借书日期有更新的权力。A.14.11已知有四个关系如下,请用SQL语言完成下面各项操作:供应商表S:由供应商代码(SNO)、供应商姓名(SNAME)、供应商所在城市(CITY)组成。第36页 零件表P:由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成。工程项目表J:由工程项目代码(JNO)、工程项目名(JNAME)、所在城市(CITY)组成。供应情况表SPJ:由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成。(1)分别创建上面四个基本表,同时指定主码和外吗。(2)检索供应商代码为S1供应商供应的零件号(3)检索没有使用天津供应商生产的红色零件的工程号JNO;(4)检索出各个工程项目使用的零件数量。(5)检索上海厂商供应的所有零件代码,并且按照重量从大到小显示出来。(6)检索出供应商姓名头两个字为“浦东”的供应商的信息。(7)把全部红色零件的颜色改成蓝色。(8)从零件表中删除零件号是P2的记录。(9)请将(S2,J6,P4,200)插入供应情况关系。(10)授予用户“王明”对零件表有INSERT的权限,并允许该权限传播。(11)创建一删除触发器,当零件表中删除零件记录时,将供应情况表的对应的供应信息删除。第36页 答案:(1)分别创建上面四个基本表,同时指定主码和外吗。CREATETABLES(SNOCHAR(5),SNAMECHAR(20),CITYCHAR(20),CONSTRAINTSNO_pkPRIMARYKEY(SNO));CREATETABLEP(PNOCHAR(5),PNAMECHAR(20),COLORCHAR(6)WEIGHTNUMBER,CONSTRAINTPNO_pkPRIMARYKEY(PNO));CREATETABLEJ(JNOCHAR(5),JNAMECHAR(20),CITYCHAR(20),CONSTRAINTJNO_pkPRIMARYKEY(JNO));第36页 CREATETABLESPJ(SNOCHAR(5),PNOCHAR(5),JNOCHAR(5),QTYNUMBER,CONSTRAINTSPJ_pkPRIMARYKEY(SNO,PNO,JNO),CONSTRAINTSNO_fkFOREIGNKEY(SNO)REFERENCESS(SNO),CONSTRAINTPNO_fkFOREIGNKEY(PNO)REFERENCESP(PNO),CONSTRAINTJNO_fkFOREIGNKEY(JNO)REFERENCESJ(JNO),);(1)检索供应商代码为S1供应商供应的零件号SELECTPNOFROMSPJWHERESNO=’S1’;(2)检索没有使用天津供应商生产的红色零件的工程号JNO;SELECTJNOFROMJ第36页 WHERENOTEXISTS(SELECT*FROMS,P,SPJWHERES.SNO=SPJ.SNOANDJ.JNO=SPJ.JNOANDP.PNO=SPJ.PNOANDP.COLOR=‘红色’ANDS.CITY=‘天津’);或SELECTDISTINCTJNOFROMSPJWHEREJNONOTIN(SELECT*FROMS,P,SPJWHERES.SNO=SPJ.SNOANDP.PNO=SPJ.PNOANDP.COLOR=‘红色’ANDS.CITY=‘天津’);第36页 (1)检索出各个工程项目使用的零件数量。SELECTJNO,SUM(QTY)FROMSPJGROUPBYJNO;(2)检索上海厂商供应的所有零件代码,并且按照重量从大到小显示出来。SELECTP.PNOFROMP,SPJ,SWHERES.SNO=SPJ.SNOANDP.PNO=SPJ.PNOANDS.CITY=‘上海’ORDERBYWEIGHTDESC;或SELECTDISTINCTPNOFROMSPJ,SWHERES.SNO=SPJ.SNOANDS.CITY=‘上海’ORDERBYWEIGHTDESC;(6)检索出供应商姓名头两个字为“浦东”的供应商的信息。第36页 SELECT*FROMSWHERESNAMELIKE‘浦东%’;(7)把全部红色零件的颜色改成蓝色。UPDATEPSETCOLOR=‘蓝色’WHERECOLOR=‘红色’;(8)从零件表中删除零件号是P2的记录。DELETEFROMPWHEREPNO=‘P2’;(9)请将(S2,J6,P4,200)插入供应情况关系。INSERTINTOSPJVALUES(‘S2’,’J6’,’P4’,200);(10)授予用户“王明”对零件表有INSERT的权限,并允许该权限传播。GRANTINSERTONPTO‘王明’第36页 WITHGRANTOPTION;第1章Oracle数据库第2章ORACLE存储过程与触发器第36页 第1章关系数据理论1.1习题P167A.16.1名词解释:范式,函数依赖,部分函数依赖,传递函数依赖,完全函数依赖,多值依赖答案:范式:范式是符合某一种级别的关系模式的集合。函数依赖:设关系R(U)是属性集U上的关系模式,X、Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属件值相等,而在Y上的属性值不等,则称X函数决定Y,或Y函数依赖X.记作X→Y。部分函数依赖:在R(U)中,如果X→Y,存在X的一个真子集X’,有X’→Y,则称Y对X部分函数依赖,记作XY。传递函数依赖:在R(U)中,如果X→Y,(YX),YX,Y→Z,则称Z对X传递函数依赖。第36页 记为:XZ完全函数依赖:在R(U)中,如果X→Y,并且对于X的任何一个真子集X’,都有X’Y,则称Y对X完全函数依赖,记作:XY。多值依赖:设R(U)是一个属性集U上的一个关系模式,X、Y和Z是U的子集,并且Z=U-X-Y。关系模式R(U)中多值依赖X→→Y成立,当且仅当对R(U)的任一关系r,给定的一对(x,z)值,有一组Y的值,这组值仅仅决定于x值而与z值无关。A.16.76.7设关系模式R(ABC),F是R上成立的FD集,F={C→B,B→A}。(1)试说明R不是3NF模式的理由。答案:该关系的吗是C,因C→B、B→A、BC,即AC;故R不是3NF。(2)试把R分解成3NF模式集。答案:{R1(AB)、R2(BC)}。A.26.86.8设关系模式R,其中U={A,B,C,D,E,第36页 F},函数依赖集F={A→C,C→A,B→AC,D→AC,BD→A}。(1)求出BF+。答案:解设X(0)=B;(1)X(1)=B∪AC=ABC。(2)X(0)≠X(1)X(2)=X(1)。(3)算法终止(B)F+=ABC。(2)求出F的最小函数依赖集。答案:C.1解1:(1)根据分解规则把F中的函数依赖转换成右部都是单届性的函数依赖集合,分解后的函数依赖集仍用F表示。F={A→C,C→A,B→A,B→C,D→A,D→C,BD→A}(2)去F中冗余的函数依赖。①判断A→C是否冗余:设:G1={C→A,B→A,B→C,D→A,D→C,BD→A},得:,第36页 而,故A→C不冗余。②判断C→A是否冗余:设:G2=={A→C,B→A,B→C,D→A,D→C,BD→A},得:,而,∴故A→C不冗余。③判断B→A是否冗余:设:G3=={A→C,C→A,B→C,D→A,D→C,BD→A},得:,而,∴故B→A冗余。。④判断B→C是否冗余:设:G4=={A→C,C→A,D→A,D→C,BD→A},得:,而,∴B→C不冗余。⑤判断D→A是否冗余:设:G5=={A→C,C→A,B→C,D→C,BD→A},得:,而,∴D→A冗余。⑥判断D→C是否冗余:设:G6=={A→C,C→A,B→C,BD→A},得:,而,∴D→C不冗余。⑦判断BD→A是否冗余:第36页 设:G7=={A→C,C→A,B→C,D→C},得:,而,∴BD→A冗余。由于该例中的函数依赖表达式的左部均为单属性,因而不需要进行第三步的检查。Fm={A→C,C→A,B→C,D→C}。同理:Fm={A→C,C→A,B→A,D→A}Fm={A→C,C→A,B→A,D→C}Fm={A→C,C→A,B→C,D→A}A.16.96.9指出下列关系模式是第几范式?并说明理由。(1)R(A,B,C)F={A→C,C→A,A→BC}答案:BCNF,该关系的码是A或C,符合每一个决定属性因素都包含码。(2)R(A,B,C,D)F={B→D,AB→C}答案:第36页 1NF,该关系的码是AB,非主属性D部分函数依赖于码。(3)(A,B,C)F={AB→C}答案:BCNF,该关系的码是AB,符合每一个决定属性因素都包含码。(4)R(A,B,C)F={B→C,AC→B}答案:3NF。该关系的码是AB或AC,ABC都是主属性,故R属于3NF;但不符合每一个决定属性因素都包含码,故R不属于BCNF。第36页 数据库设计1.1习题P201-202A.17.17.1试述数据库设计过程。答案:数据库的设计过程可以使用软件工程中的生存周期的概念来说明,称为“数据库设计的生存周期”,它是指从数据库研制到不再使用它的整个时期。按规范设计法可将数据库设计分为需求分析、概念结构设计、逻辑结构设计、物理设计、数据库实施和数据库运行与维护六个阶段。A.27.177.17假设某公司在多个地区设有销售部经销本公司的各种产品,每个销售部聘用多名职工,且每名职工只属于一个销售部。销售部有部门名称、地区和电话等属性,产品有产品编码、品名和单价等属性,职工有职工号、姓名和性别等属性,每个销售部销售产品有数量属性。(1)根据上述语义画出E-R图,要求在图中画出属性并注明联系的类型;答案:第36页 (2)试将E-R模型转换成关系模型,并指出每个关系模式的主码和外码。答案:公司(公司名)销售部(部门名,公司名,地区,电话)主码:部门名外码:(公司名)参照:公司(公司名)职工(职工号,部门名,姓名,性别)主码:职工号外码:(部门名)参照:销售部(部门名)产品(产品编号,品名,单价)主码:产品编号销售(部门名,产品编号,数量)第36页 主码:(部门名,产品编号)外码:(部门名)参照:销售部(部门名)外码:(产品编号)参照:产品(产品编号)销售部(部门名,地区,电话)主码:部门名职工(职工号,部门名,姓名,性别)主码:职工号外码:(部门名)参照:销售部(部门名)产品(产品编号,品名,单价)主码:产品编号销售(部门名,产品编号,数量)主码:(部门名,产品编号)外码:(部门名)参照:销售部(部门名)外码:(产品编号)参照:产品(产品编号)第36页 数据库安全性1.1习题P243-244A.19.19.1解释下列术语:(1)数据库的安全性;(2)自主存取;(3)强制存取;(4)数据库角色;(5)审计。答案:(1)数据库的安全性:数据库的安全性是指,保护数据库以防止对数据库的不合法使用和因偶然或恶意的原因是数据库中数据遭到非法更改、破坏或泄露等所采取的各种技术、管理、立法及其它安全性措施的总称。(2)自主存取:用户对于不同的数据库对象有不同的存取权限,不同的用户对同一数据库对象也有不同的权限,而且,用户还可以将自己的权限授权给其它用户。3)强制存取:所谓强制存取控制是指系统为保证更高程度的安全性,按照相应标准中安全策略的要求,所采取的强制存取检查手段。它不是用户能直接感知或进行控制的。DBMS所管理的全部实体被分为主体和客体。对于二者,DBMS为它们每个实体指派一个敏感度标记。第36页 强制存取控制就是通过比较二者的敏感度标记,最终确定主体能否存取客体(4)数据库角色当很多用户拥有相同的若干权限,我们可以将这些用户分为一组,并且可以对这些权限实行统一管理。具体的做法就是将这些权限打包并进行命名,这就是角色。(5)审计审计就是犯罪侦破中的一个重要措施,它跟踪记录用户对数据库的所有操作,并把这些信息保存在审计日志中。l技术人员可以利用这些信息,分析导致对数据库泄露或损坏的一系列时件,从而找出非法访问数据的人、时间、地点、内容等有关信息,以达到对犯罪人员惩戒的目的。A.19.69.6简述强制存取的两条规则。答案:(1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读取相应的客体。(2)仅当主体的许可证级别等于客体的密级时,该主体才能写相应的客体。第36页 第36页'