欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据库系统概论作业(共26页).doc

    • 资源ID:12068928       资源大小:475KB        全文页数:26页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库系统概论作业(共26页).doc

    精选优质文档-倾情为你奉上浙江大学远程教育学院数据库系统概论课程作业姓名:学 号:年级:2014春 学习中心:华家池第一章习题(2.6.10)2.使用数据库系统有什么好处?使用数据库系统的好处是由数据库管理系统的特点或优点决定的。使用数据库系统的好处很多,例如,可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担,等等。使用数据库系统可以大大提高应用开发的效率。因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由 DBMS 来完成。用一个通俗的比喻,使用了 DBMS 就如有了一个好参谋、好助手,许多具体的技术工作都由这个助手来完成。开发人员就可以专注于应用逻辑的设计,而不必为数据管理的许许多多复杂的细节操心。还有,当应用逻辑改变,数据的逻辑结构也需要改变时,由于数据库系统提供了数据与程序之间的独立性,数据逻辑结构的改变是 DBA 的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序,从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。使用数据库系统可以减轻数据库系统管理人员维护系统的负担。因为DBMS 在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性、多用户并发控制、故障恢复等,都由 DBMS 执行。总之,使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,提高数据的利用率和一致性,又有利于应用程序的开发和维护。6.数据库管理系统的主要功能有哪些?(l) 数据库定义功能;(2) 数据存取功能;(3) 数据库运行管理;(4) 数据库的建立和维护功能。10.试给出三个实际情况的E-R图,要求实体型之间具有一对一、一对多、多对多各种不同的联系。人拥有1合法身份证1工厂生产m产品n公司拥有1部门n第二章习题(4.5)4.试述关系模型的完整性规则。在参照完整性中,为什么外部码属性的值也可以为空?什么情况下才可以为空?关系模型的完整性规则是对关系的某种约束条件。关系模型中有三类完整性约束:实体完整性、参照完整性和用户自定义完整性。其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称做是关系的两个不变性,应该由关系系统自动支持。(1) 实体完整性规则:指若属性 A 是基本关系 R 的主属性,则属性 A 不能取空值。(2) 参照完整性规则:若属性(或属性组)F 是基本关系 R 的外码,它与基本关系 S 的主码 相对应(基本关系 R 和 S 不一定是不同的关系),则对于 R 中每个元组在 F 上的值必须为:1)空值(F 的每个属性值均为空值);2)等于 S 中某个元组的主码值。(3) 用户自定义的完整性是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。在参照完整性中,外部码属性的值可以为空,它表示该属性的值尚未确定,但前提条件是该外部码属性不是其所在关系的主属性。例如,在下面的"学生"表中,"专业号"是一个外部码,不是学生表的主属性,可以为空,其语义是,该学生的专业尚未确定。即属性” 专业号”本身不是主属性,则可以取空值,否则不能取空值。学生(学号,姓名,性别,专业号,年龄)在下面的"选修"表中的"课程号"虽然也是一个外部码属性,但它又是"课程"表的主属性,所以不能为空,因为关系模型必须满足实体完整性。课程(课程号,课程名,学分)选修( 学号, 课程号, 成绩)5.设有一个SPJ数据库,包括S、P、J、SPJ4个关系模式:S (SNO, SNAME, STATUS, CITY);P (PNO, PNAME, COLOR, WEIGHT);J (JNO, JNAME, CITY);SPJ (SNO, PNO, JNO, QTY);供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成:零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成;供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。今有若干数据如下:S表SNOSNAMESTATUSCITYS1S2S3S4S5精益盛锡东方红丰泰盛为民2010302030天津北京北京天津上海P表PNOPNAMECOLORWEIGHTP1P2P3P4P5P6螺母螺栓螺丝刀螺丝刀凸轮齿轮红绿蓝红蓝红121714144030J表JNOJNAMECITYJ1J2J3J4J5J6J7三建一汽弹簧厂造船厂机车厂无线电厂半导体厂北京长春天津天津唐山常州南京SJP表SNOPNOJNOQTYS1S1S1S1S2S2S2S2S2S2S3S3S4S4S4S5S5S5S5P1P1P1P2P3P3P3P3P5P5P1P3P5P6P6P2P3P6P6J1J3J4J2J1J2J4J5J1J2J1J1J1J3J4J4J1J2J4200100700100400200500400400100200200100300200100200200500试用关系代数、ALPHA语言、QBE语言完成如下查询:(1) 求供应工程J1零件的供应商号码SNO;(2) 求供应工程J1零件P1的供应商号码SNO; (3) 求供应工程J1零件为红色的供应商的号码SNO;(4) 求没有使用天津供应商生产的红色零件的工程号JNO;关系代数QBE 语言当不考虑没有使用任何零件的工程时(5) 求至少用了供应商S1所供应的全部零件的工程号JNO。第三章习题(3.4.5.11)3.用SQL语句建立第二章习题5中的4个表。对于 S 表: S ( SNO , SNAME , STATUS , CITY ) ;建 S 表:CREATE TABLE S (SNO CHAR(3) UNIQUE,Sname CHAR (10),Status CHAR (2),City CHAR (20);对于 P 表: P (PNO, PNAME, COLOR, WEIGHT);建 P 表 :CREATE TABLE P(PNO CHAR (3) UNIQUE,Pname CHAR (10),COLOR CHAR (2),WEIGHT INT);对于 J 表: J ( JNO , JNAME , CITY);建 J 表:CREATE TABLE J(JNo CHAR (3) UNlQUE,JNAME CHAR (10),CITY CHAR (20)对于 SPJ 表: SPJ ( SNo , PNo , JNo , QTY);建 SPJ 表:CREATE TABLE SPJ(SNo CHAR (3),PNo CHAR (3),JNO CHAR (3),QTY INT)4.针对上题中建立的四个表试用SQL完成第二章习题5中的查询。(1)求供应工程J1 零件的供应商号码 SNO  SELECT DISTINCT SNO FROM SPJ WHERE JNO='J1'(2)求供应工程J1零件 Pl 的供应商号码 SNO   SELECT DISTINCT SNOFROM SPJWHERE JNO='J1' AND PNO='P1'(3)求供应工程 J1零件为红色的供应商号码 SNO   SELECT DISTINCT SNOFROM SPJ, PWHERE JNO='J1' AND SPJ.PNO=P.PNO AND COLOR='红'(4)求没有使用天津供应商生产的红色零件的工程号 JNO;或(5)求至少用了供应商 Sl 所供应的全部零件的工程号 JNO  5.针对习题3中的四个表试用SQL完成以下各项操作;(1找出所有供应商的姓名和所在城市;SELECT SNAME,CITY FROM S(2) 找出所有零件的名称、颜色、重量;SELECT PNAME,COLOR,WEIGHTFROM P(3) 找出使用供应商S1所有供应零件的工程号码;SELECT DISTINCT JNOFROM SPJWHERE SNO='S1'(4) 找出工程项目J2使用的各种零件的名称及其数量;SELECT P .PNAME, SPJ.QTYFROM SPJ,PWHERE P.PNO=SPJ.PNO AND SPJ.JNO='J2'(5) 找出上海厂商供应的所有零件号码;(6) 找出使用上海产的零件的工程名称;(7) 找出没有使用天津产的零件的工程号码;(8) 把全部红色零件的颜色改成蓝色;UPDATE P SET COLOR='蓝'WHERE COLOR='红'(9) 由S5供给J4的零件P6改为由S3供应,请作必要的修改;UPDATE SPJ SET SNO='S3'WHERE SNO='S5' AND JNO='J4' AND PNO='P6'(10) 从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录;DELETE FROM SPJ WHERE SNO='S2'DELETE FROM S WHERE SNO='S2'(11)请将(S2,J6,P4,200)插入供应情况关系。INSERT INTO SPJ(SNO,PNO,JNO,QTY) VALUES('S2','J6','P4',200)或者INSERT INTO SPJ VALUES('S2','J6','P4',200)11.请为三建工程项目建立一个供应情况的视图,包括供应商代码(SNO)、零件代码(PNO)、供应数量(QTY)。针对该视图完成下列查询;(1)找出三建工程项目使用的各种零件代码及其数量;(2)找出供应商S1的供应情况。建视图:CREATE VIEW V_SPJ ASSELECT SNO,PNO,QTYFROM SPJWHERE JNO=(SELECT NOFROM JWHERE JNAME = '三建');对该视图查询:(1) SELECT PNO, QTYFROM V_SPJ;(2) SELECT PNO, QTY /* S1 供应三建工程的零件号和对应的数量*/FROM V_SPJWHERE SNO ='SI'第四章习题(4.8.9.11)4.试述CC评估保证级划分的基本内容。CC 提出国际公认的表述信息技术安全性的结构,把信息产品的安全要求分为安全功能要求、安全保证要求。CC 文本由三部分组成:简介和一般模型;安全功能要求;安全保证要求。CC 评估保证级划分如下:8.今有两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号)部门(部门号,名称,经理名,地址,电话号)请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功能;(a) 用户王明对两个表有SELECT权力;GRANT SELECT ON 职工,部门TO 王明(b) 用户李勇对两个表有INSERT和DELETE权力;GRANT INSERT,DELETE ON 职工,部门TO 李勇(c) 每个职工只对自己的记录有SELECT权力;GRANT SELECT ON 职工WHENUSER()=NAMETO ALL;(d) 用户刘星对职工表有SELECT权力,对工资字段据具有更新权力;GRANT SELECT,UPDATE(工资) ON 职工TO 刘星(e) 用户张新具有修改这两个表的结构的权力;GRANT ALTER TABLE ON 职工,部门TO 张新;(f) 用户周平具有对两个表所有权力(读,插,改,删数据),并具有给其他用户授权的权力;GRANT ALL PRIVILIGES ON 职工,部门TO 周平WITH GRANT OPTION;(g) 用户杨兰具有从每个部门职工中SELECT最高工资,最低工资,平均工资的权力,他不能查看每个人的工资。首先建立一个视图,然后对这个视图定义杨兰的存取权限:CREATE VIEW 部门工资 ASSELECT 部门.名称,MAX(工资),MIN(工资),AVG(工资)FROM 职工,部门WHERE 职工.部门号=部门.部门号GROUP BY 职工.部门号;GRANT SELECT ON 部门工资TO 杨兰;9.把习题8中(a)(g)的每一种情况,撤销各用户所授权的权力。(a)REVOKE SELECT ON 职工,部门FROM 王明;(b)REVOKE INSERT , DELETE ON 职工,部门FROM 李勇;(c)REOVKE SELECT ON 职工WHEN USER ( ) =NAMEFROM ALI ;这里假定用户将自己的名字作为ID,且系统的REOVKE 语句支持WHEN 子句,系统也支持USER( )的使用。(d)REVOKE SELECT , UPDATE ON 职工FROM 刘星;(e)REVOKE ALTER TABLE ON 职工,部门FROM 张新;(f)REVOKE ALL PRIVILIGES ON 职工,部门FROM 周平;(g)REVOKE SELECT ON 部门工资FROM 杨兰;DROP VIEW 部门工资;11.理解并解释MAC机制中主体、客体、敏感度标记的含义。主体是系统中的活动实体,既包括DBMS 所管理的实际用户,也包括代表用户的各进程。客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等。对于主体和客体,DBMS 为它们每个实例(值)指派一个敏感度标记(Label )。敏感度标记被分成若干级别,例如绝密(Top Secret )、机密(Secret )、可信( Confidential )、公开(Public)等。主体的敏感度标记称为许可证级别,客体的敏感度标记称为密级(Classification Level )。MAC 机制就是通过对比主体的Label 和客体的Label,最终确定主体是否能够存取客体。第五章习题(2.5.6.7)2.数据库的完整性概念与数据库的安全性概念有什么区别和联系?数据的完整性和安全性是两个不同的概念,但是有一定的联系。前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。5.RDBMS在实现参照完整性时需要考虑哪些方面?RDBMS 在实现参照完整性时需要考虑以下几个方面:(l)外码是否可以接受空值。(2)删除被参照关系的元组时的考虑,这时系统可能采取的作法有三种:l)级联删除(CASCADES ) ;2)受限删除(RESTRICTED ) ;3)置空值删除(NULLIFIES)。(3)在参照关系中插入元组时的问题,这时系统可能采取的作法有:l)受限插入;2)递归插入。(4)修改关系中主码的问题。一般是不能用 UPDATE 语句修改关系主码值。如果需要修改主码值,只能先删除该元组,然后再把具有新主码值的元组插入到关系中。如果允许修改主码,首先要保证主码的惟一性和非空,否则拒绝修改。然后要区分是参照关系还是被参照关系。6.假设有下面两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;部门(部门号,名称,经理名,电话),其中部门号为主码;用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:(1)定义每个模式的主码;(2)定义参照完整性;(3)定义职工年龄不得超过60岁。CREATE TABLE DEPT(Deptno NUMBER(2) RIMARY KEY,Deptname VARCHAR(10),Manager VARCHAR(10),PhoneNumber Char(12);CREATE TABLE EMP(Empno NUMBER(4),Ename VARCHAR(10),Age NUMBER(2)CONSTRAINT C1 CHECK ( Age<=60),Job VARCHAR(9),Sal NUMBER(7,2),Deptno NUMBER(2),RIMARY KEY (Empno),FOREIGN KEY (Deptno) REFFERENCES DEPT(Deptno);专心-专注-专业7.在关系系统中,操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一般是如何分别进行处理的?对于违反实体完整性和用户定义的完整性的操作一般都采用拒绝执行的方式进行处理。而对于违反参照完整性的操作,并不都是简单地拒绝执行,有时要根据应用语义执行一些附加的操作,以保证数据库的正确性。第六章习题(2.12)2.建立一个关于系、学生、班级、学会等诸信息的关系数据库。描述学生的属性有:学号、姓名、出生年月、系名、班号、宿舍区;描述班级的属性有:班号、专业名、系名、人数、入校年份;描述系的属性有:系名、系号、系办公室地点、人数;描述学会的属性有:学会名、成立年份、地点、人数。有关语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会有一个入会年份。请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。指出各关系的候选码、外部码,有没有全码存在?12.下面的结论哪些是正确的?哪些是错误的?对于错误的请给出一个反例说明之。(1)任何一个二目关系是属于3NF的。(2)任何一个二目关系是属于BCNF的。(3)任何一个二目关系是属于4NF的。(4)当且仅当函数依赖AB在R上成立,关系R(A,B,C)等于其投影R1(A,B)和R2(A, C)的连接。×当AB 在R 上成立,关系R(A,B,C)等于其投影R1(A,B) 和R2(A,C)的连接。反之则不然。正确的应当是:当且仅当多值依赖AB 在R 上成立,关系R(A,B,C)等于其投影R1(A,B) 和R2(A,C)的连接。(5)若R.AR.B,R.BR.C,则R.AR.C (6)若R.AR.B,R.AR.C,则R.AR.(B,C) (7)若R.BR.A,R.CR.A,则R.(B,C)R.A (8)若R.(B,C)R. A, 则R.BR.A, R.CR.A。×第七章习题(9.11.12)9.试述数据库概念结构设计的重要性和设计步骤。重要性:数据库概念设计是整个数据库设计的关键,将在需求分析阶段所得到的应用需求首先抽象为概念结构,以此作为各种数据模型的共同基础,从而能更好地、更准确地用某一DBMS 实现这些需求。设计步骤:概念结构的设计方法有多种,其中最经常采用的策略是自底向上方法,该方法的设计步骤通常分为两步:第 1 步是抽象数据并设计局部视图,第 2 步是集成局部视图,得到全局的概念结构。11.什么是数据库的逻辑结构设计?试述其设计步骤。数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本E-R 图转换为与选用的DBMS 产品所支持的数据模型相符合的逻辑结构。设计步骤为:(l)将概念结构转换为一般的关系、网状、层次模型;(2)将转换来的关系、网状、层次模型向特定 DBMS 支持下的数据模型转换;(3)对数据模型进行优化。12.试把第一章习题12和习题13中的E-R图转换为关系模型。习题12. 学校中有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,其中有教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。请用E-R 图画出此学校的概念模型。转化为关系模型为(下划线表示是主码属性):系(系编号, 系名, 系主任)班级(班级编号, 班级名, 年级, 系编号)教研室(教研室编号, 名称, 主任, 系编号)学生(学号,姓名,性别, 学历, 研究方向, 导师职工号)课程(课程号,课程名,学分)教员(职工号, 姓名, 职称, 教研室编号)选课(学号, 课程号, 成绩)习题13. 某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。请用E-R图画出此工厂产品、零件、材料、仓库的概念模型。转换成关系模型为(下划线表示是主码属性):仓库(仓库号,仓库名)产品(产品号,产品名称,仓库号)零件 (零件号,零件名称)材料(材料号, 材料名称, 材料类别, 仓库号, 存放量)产品组成(产品号,零件号,使用零件数量)零件组成(零件号, 材料号,使用材料数量)零件储存(零件号,仓库号, 存储量)第九章习题(2)2.对学生课程数据库有如下的查询:SELECT CnameFROM Student, Course, SCWHERE Student. Sno = SC. Sno AND SC. Cno = Course. Cno AND Student. Sdept = IS;此查询要求信息系学生选修了的所有课程名称。试画出用关系代数表示的语法树,并用关系代数表达式优化算法对原始的语法树进行优化处理,画出优化后的标准语法树。 第十章习题(6.7.8)6.数据库转储的意义是什么?试比较各种数据转储方法。数据转储是数据库恢复中采用的基本技术。所谓转储即DBA 定期地将数据库复制到磁带或另一个磁盘上保存起来的过程。当数据库遭到破坏后可以将后备副本重新装入,将数据库恢复到转储时的状态。静态转储:在系统中无运行事务时进行的转储操作。静态转储简单,但必须等待正运行的用户事务结束才能进行。同样,新的事务必须等待转储结束才能执行。显然,这会降低数据库的可用性。动态转储:指转储期间允许对数据库进行存取或修改。动态转储可克服静态转储的缺点,它不用等待正在运行的用户事务结束,也不会影响新事务的运行。但是,转储结束时后援副本上的数据并不能保证正确有效。因为转储期间运行的事务可能修改了某些数据,使得后援副本上的数据不是数据库的一致版本。为此,必须把转储期间各事务对数据库的修改活动登记下来,建立日志文件(log file )。这样,后援副本加上日志文件就能得到数据库某一时刻的正确状态。转储还可以分为海量转储和增量转储两种方式。海量转储是指每次转储全部数据库。增量转储则指每次只转储上一次转储后更新过的数据。从恢复角度看,使用海量转储得到的后备副本进行恢复一般说来更简单些。但如果数据库很大,事务处理又十分频繁,则增量转储方式更实用、更有效。7.什么是日志文件?为什么要设立日志文件?(1)日志文件是用来记录事务对数据库的更新操作的文件。(2)设立日志文件的目的是:进行事务故障恢复;进行系统故障恢复;协助后备副本进行介质故障恢复。8.登记日志文件时为什么必须先写日志文件,后写数据库?第十一章习题(4.7.9.10)4.如何用封锁机制保证数据的一致性?DBMS 在对数据进行读、写操作之前首先对该数据执行封锁操作,例如事务 Tl在对 A 进行修改之前先对 A 执行 Xlock ( A ) ,即对 A 加 x 锁。这样,当T2 请求对 A 加x 锁时就被拒绝,T2 只能等待Tl 释放A 上的锁后才能获得对A 的 x 锁,这时它读到的A是Tl 更新后的值,再按此新的A 值进行运算。这样就不会丢失Tl 的更新。DBMS 按照一定的封锁协议对并发操作进行控制,使得多个并发操作有序地执行,就可以避免丢失修改、不可重复读和读“脏”数据等数据不一致性。7.请给出检测死锁发生的一种方法,当发生死锁后如何解除死锁?数据库系统一般采用允许死锁发生,DBMS 检测到死锁后加以解除的方法。DBMS中诊断死锁的方法与操作系统类似,一般使用超时法或事务等待图法。超时法是:如果一个事务的等待时间超过了规定的时限,就认为发生了死锁。超时法实现简单,但有可能误判死锁,事务因其他原因长时间等待超过时限时,系统会误认为发生了死锁。若时限设置得太长,又不能及时发现死锁发生。DBMS 并发控制子系统检测到死锁后,就要设法解除。通常采用的方法是选择一个处理死锁代价最小的事务,将其撤消,释放此事务持有的所有锁,使其他事务得以继续运行下去。当然,对撤销的事务所执行的数据修改操作必须加以恢复。9.设T1、T2、T3是如下的3个事务,设A的初值为0;T1:A:=A2;T2:A:=A*2;T3:A:=A*2;(AA2)1、若这3事务允许并发执行,则有多少种可能的正确结果,请一一列举出来;A 的最终结果可能有2 、4 、8 、16 。因为串行执行次序有 Tl T2T3、 TlT3T2、T2T1T3、T2T3Tl 、T3T1T2、T3T2Tl。对应的执行结果是 16 、8 、4 、2 、4 、2 。2、请给出一个可串行化的调度,并给出执行结果;最后结果 A 为 16 ,是可串行化的调度。3、请给出一个非串行化的调度,并给出执行结果;最后结果 A 为 0 ,为非串行化的调度。4、若这3个事务都遵守两段锁协议,请给出一个不产生死锁的可串行化调度;5、若这3个事务都遵守两段锁协议,请给出一个产生死锁的调度。10.今有3个事务的一个调度r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B) w1(A),该调度是冲突可串行化的调度吗?为什么?该调度是冲突可串行调度。因为Sc1= r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B)w1(A), 交换r1(A)与w3(B),得到r3(B)w3(B) r1(A)r2(B)r2(A)w2(B)r1(B)w1(A)再交换r1(A)与r2(B)r2(A)w2(B),得到Sc2= r3(B)w3(B) r2(B)r2(A)w2(B)r1(A)r1(B)w1(A)由于Sc2 是串行的,而且两次交换都是基于不冲突操作的,所以Sc1= r3(B)r1(A)w3(B)r2(B)r2(A)w2(B)r1(B)w1(A)是冲突可串行化的调度。

    注意事项

    本文(数据库系统概论作业(共26页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开