数据库原理课后习题答案.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《数据库原理课后习题答案.pdf》由会员分享,可在线阅读,更多相关《数据库原理课后习题答案.pdf(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、常将有日思无日,莫待无时思有时。增广贤文勿以恶小而为之,勿以善小而不为。刘备第 1 章 绪论 2 使用数据库系统有什么好处 答:使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,提高数据的利用率和一致性,又有利于应用程序的开发和维护。6 数据库管理系统的主要功能有哪些 答:(l)数据库定义功能;(2)数据存取功能;(3)数据库运行管理;(4)数据库的建立和维护功能。8 试述概念模型的作用。答:概念模型实际上是现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交
2、流的语言。12 学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每人各带若干研究生;每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。请用 E 一 R 图画出此学校的概念模型。答:实体间联系如下图所示,联系选修有一个属性:成绩。各实体需要有属性说明,需要画出各实体的图(带属性)或在下图中直接添加实体的属性,比如:学生的属性包括学号、姓名、性别、身高、联系方式等,此略。13 某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所属的不同产品分别放在仓库中,原材
3、料按照类别放在若干仓库中。请用 E 一 R 图画出此工厂产品、零件、材料、仓库的概念模型。答:各实体需要有属性,此略。联系组成、制造、储存、存放都有属性:数量。先天下之忧而忧,后天下之乐而乐。范仲淹常将有日思无日,莫待无时思有时。增广贤文 20 试述数据库系统三级模式结构,这种结构的优点是什么 答:数据库系统的三级模式结构由外模式、模式和内模式组成。外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户
4、的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通常是模式的子集。内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给 DBMs 管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。数据库系统在这三级模式之间提供了两层映像:外模式模式映像和模式内模式映像,这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。22 什么叫数据与程序的物理独立性什么叫数据与程序的逻辑独立性为什么数据库系统具有数据与程序的独立性 答:数据与程序
5、的逻辑独立性是指用户的的应用程序与数据库的逻辑结构是相互独立的。数据与程序的物理独立性是指用户的的应用程序与存储在磁盘上的数据库中数据是相互独立的。当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。当数据库的存储结构改变了,由数据库管理员对模式内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保
6、证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。海纳百川,有容乃大;壁立千仞,无欲则刚。林则徐云路鹏程九万里,雪窗萤火二十年。王实甫第 2 章 关系数据库 4 试述关系模型的完整性规则。在参照完整性中,为什么外部码属性的值也可以为空什么情况下才可以为空 答:实体完整性规则是指若属性 A 是基本关系 R 的主属性,则属性 A 不能取空值。若属性(或属性组)F 是基本关系 R 的外码,它与基本关系 S 的主码 Ks 相对应(基本关系 R和 S 不一定是不同的关系),则对于 R 中每个元组在 F 上的值必须为:或者取空值(F 的每个属性值均为空值);或者等于 S 中某个元组的主码值。即属
7、性 F 本身不是主属性,则可以取空值,否则不能取空值。5设有一个 SPJ 数据库,包括 S,P,J,SPJ 四个关系模式:1)求供应工程 J1 零件的供应商号码 SNO:Sno(Sno=J1(SPJ))2)求供应工程 J1 零件 P1 的供应商号码 SNO:Sno(Sno=J1Pno=P1(SPJ)3)求供应工程 J1 零件为红色的供应商号码 SNO:Sno(Pno=P1(COLOR=红(P)SPJ))4)求没有使用天津供应商生产的红色零件的工程号 JNO:Jno(SPJ)-JNO(city=天津Color=红(SSPJP)5)求至少用了供应商 S1 所供应的全部零件的工程号 JNO:Jno,
8、Pno(SPJ)Pno(Sno=S1(SPJ)6试述等值连接与自然连接的区别和联系。答:连接运算符是“=”的连接运算称为等值连接。它是从关系 R 与 S 的广义笛卡尔积中选取 A,B 属性值相等的那些元组。自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。万两黄金容易得,知心一个也难求。曹雪芹非淡泊无以明志,非宁静无以致远。诸葛亮第 3 章 关系数据库标准语言 SQL 4.针对上题中建立的 4 个表试用 SQL 语言完成第二章习题 5 中的查询。(l)求供应工程 Jl 零件的供应商号码 SNO;SELECT DIST SNO FRO
9、M SPJ WHERE JNO=J1 (2)求供应工程 Jl 零件 Pl 的供应商号码 SNO;SELECT DIST SNO FROM SPJ WHERE JNO=J1 AND PNO=P1(3)求供应工程 Jl 零件为红色的供应商号码 SNO;SELECT SNO FROM SPJ,P WHERE JNO=J1 AND=AND COLOR=红(4)求没有使用天津供应商生产的红色零件的工程号 JNO;SELECT JNO FROM J WHERE JNO NOT IN(SELECT JNO FROM SPJ,P,S WHERE=天津 AND COLOR=红 AND=AND=。或 SELECT
10、 JNO FROM J WHERE NOT EXISITS (SELECT*FROM SPJ,P,S WHERE=天津 AND COLOR=红 AND =AND=AND =。(5)求至少用了供应商 Sl 所供应的全部零件的工程号 JNO;SELECT JNO FROM SPJ X WHERE NOT EXISITS(SELECT*FROM SPJ Y WHERE SNO=S1 AND NOT EXISITS(SELECT*FROM SPJ Z WHERE=AND=)5针对习题 3 中的四个表试用 SQL 语言完成以下各项操作:(1)找出所有供应商的姓名和所在城市。SELECT SNAME,CI
11、TY FROM S(2)找出所有零件的名称、颜色、重量。SELECT PNAME,COLOR,WEIGHT FROM P(3)找出使用供应商 S1 所供应零件的工程号码。SELECT DIST JNO FROM SPJ WHERE SNO=S1(4)找出工程项目 J2 使用的各种零件的名称及其数量。SELECT PNAME,QTY FROM SPJ,P WHERE=AND=J2(5)找出上海厂商供应的所有零件号码。SELECT PNO FROM SPJ,S WHERE=AND CITY=上海(6)找出使用上海产的零件的工程名称。SELECT JNAME FROM SPJ,S,J WHERE=A
12、ND=上海 AND=(7)找出没有使用天津产的零件的工程号码。类似上题中的第(4)小题。注意考虑可能某个工程没有使用任何零件,它的 JNO不在 SPJ 中出现,所以不能从 SPJ 中查询该题想要的结果。SELECT DISTINCT JNO FROM J WHERE JNO NOT IN (SELECT DIST JNO FROM SPJ,S WHERE=AND=天津)大丈夫处世,不能立功建业,几与草木同腐乎?罗贯中百川东到海,何时复西归?少壮不尽力,老大徒伤悲。汉乐府长歌行或 SELECT DISTINCT JNO FROM J WHERE NOT EXISITS (SELECT*FROM
13、SPJ,S,J WHERE=AND=天津 AND=.JNO)(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 的记录,并从供应情况关系中删除相应的记录。A、DELETE FROM SPJ WHERE SNO=S2 B、DELETE FROM S WHERE SNO=S2(11)请将(S2,J6,P4,200)插入供应情况关系。
14、INSERT INTO SPJ VALUES(S2,J6,P4,200)6 什么是基本表什么是视图两者的区别和联系是什么 答 基本表是本身独立存在的表,在 SQL 中一个关系就对应一个表。视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表。即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。视图在概念上与基本表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图。7 试述视图的优点。答 (l)视图能够简化用户的操作;(2)视图使用户能以多种角度看待同一数据;(3)视图对重构数据库提供了一定程度的逻辑独立性;(4)视图能够对机密数
15、据提供安全保护。(5)适当的利用视图可以更清晰的表达查询。11请为三建工程项目建立一个供应情况的视图,包括供应商代码(SNO)、零件代码(PNO)、供应数量(QTY)。CREATE VIEW VSP AS SELECT SNO,PNO,QTY FROM SPJ,J WHERE=AND=三建 针对该视图 VSP 完成下列查询:(1)找出三建工程项目使用的各种零件代码及其数量。SELECT DIST PNO,QTY FROM VSP(2)找出供应商 S1 的供应情况。SELECT DIST*FROM VSP WHERE SNO=S1 第 4 章 数据库安全性 1 什么是数据库的安全性 良辰美景奈何
16、天,便赏心乐事谁家院。则为你如花美眷,似水流年。汤显祖大丈夫处世,不能立功建业,几与草木同腐乎?罗贯中答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。5 试述实现数据库安全性控制的常用方法和技术。答:实现数据库安全性控制的常用方法和技术有:(l)用户标识和鉴别 (2)存取控制。(3)视图机制。(4)审计。(5)数据加密。6 什么是数据库中的自主存取控制方法和强制存取控制方法 答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。当用户对数据库访问时首先检查用户的存取权限。防止不合法用户对数据库的存取。强制存取控制方法:每一个数据对象被(强制地)标以一定的密
17、级,每一个用户也被(强制地)授予某一个级别的许可证。系统规定只有具有某一许可证级别的用户才能存取某一个密级的数据对象。8用 SQL 的 GRANT 和 REVOKE 语句(加上视图机制)完成以下授权定义或存取控制功能:(a)用户王明对两个表有 SELECT 权力。GRANT SELECT ON 职工,部门 TO 王明(b)用户李勇对两个表有 INSERT 和 DELETE 权力。GRANT INSERT,DELETE ON 职工,部门 TO 李勇(c)每个职工只对自己的记录有 SELECT 权力。GRANT SELECT ON 职工 WHEN USER()=NAME TO ALL;(d)用户刘
18、星对职工表有 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 部门工资 AS SELECT 部门
19、.名称,MAX(工资),MIN(工资),AVG(工资)FROM 职工,部门 穷则独善其身,达则兼善天下。孟子万两黄金容易得,知心一个也难求。曹雪芹 WHERE 职工.部门号=部门.部门号 GROUP BY 职工.部门号 GRANT SELECT ON 部门工资 TO 杨兰;9 把习题 8 中(1)-(7)的每一种情况,撤销各用户所授予的权力(1)REVOKE SELECT ON 职工,部门 FROM 王明;(2)REVOKE INSERT,DELETE ON 职工,部门 FROM 李勇;(3)REOVKE SELECT ON 职工 WHEN USER()=NAME FROM ALI;(4)RE
20、VOKE SELECT,UPDATE ON 职工 FROM 刘星;(5)REVOKE ALTER TABLE ON 职工,部门 FROM 张新;(6)REVOKE ALL PRIVILIGES ON 职工,部门 FROM 周平;(7)REVOKE SELECT ON 部门工资 FROM 杨兰;DROP VIEW 部门工资;13 什么是数据库的审计功能,为什么要提供审计功能 答:审计功能是指 DBMS 的审计模块在用户对数据库执行操作的同时把所有操作自动记录到系统的审计日志中。因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃破坏数据的人总可能存在。利用数据库的审计功能,DBA 可以根据审计跟
21、踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。14 统计数据库中存在何种特殊的安全性问题 答:统计数据库允许用户查询聚集类型的信息,如合计、平均值、最大值、最小值等,不允许查询单个记录信息。但是,人们可以从合法的查询中推导出不合法的信息,即可能存在隐蔽的信息通道,这是统计数据库要研究和解决的特殊的安全性问题。第 5 章 数据库完整性 1 什么是数据库的完整性 丈夫志四方,有事先悬弧,焉能钧三江,终年守菰蒲。顾炎武天行健,君子以自强不息。地势坤,君子以厚德载物。易经答:数据库的完整性是指数据的正确性和相容性。2 数据库的完整性概念与数据库的安全性概念有什么区别
22、和联系 答:数据的完整性和安全性是两个不同的概念,但是有一定的联系。前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(Garba:e In Garba:e out)所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。3 什么是数据库的完整性约束条件可分为哪几类 答 完整性约束条件是指数据库中的数据应该满足的语义约束条件。一般可以分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。静态列级约束是对一个列的取
23、值域的说明,包括以下几个方面:(l)对数据类型的约束,包括数据的类型、长度、单位、精度等;(2)对数据格式的约束;(3)对取值范围或取值集合的约束;(4)对空值的约束;(5)其他约束。静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。常见的静态关系约束有:(l)实体完整性约束;(2)参照完整性约束;(3)函数依赖约束。动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面:(l)修改列定义时的约束;(2)修改列值时的约束。动态元组约束是指修改某个元组的值时需要参照其旧值
24、,并且新旧值之间需要满足某种约束条件。动态关系约束是加在关系变化前后状态上的限制条件,例如事务一致性、原子性等约束条件。4.DBMS 的完整性控制机制应具有哪些功能 答:DBMS 的完整性控制机制应具有三个方面的功能:(l)定义功能,即提供定义完整性约束条件的机制;(2)检查功能,即检查用户发出的操作请求是否违背了完整性约束条件;(3)违约反应:如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。5.RDBMS 在实现参照完整性时需要考虑哪些方面 答 RDBMs 在实现参照完整性时需要考虑以下几个方面:(l)外码是否可以接受空值。(2)册 l 除被参照关系的元
25、组时的考虑,这时系统可能采取的作法有三种:l)级联删除(CASCADES);2)受限删除(RESTRICTED);3)置空值删除(NULLIFIES)。(3)在参照关系中插入元组时的问题,这时系统可能采取的作法有:l)受限插入;2)递归插入。(4)修改关系中主码的问题。一般是不能用 UPDATE 语句修改关系主码的。如果需人人好公,则天下太平;人人营私,则天下大乱。刘鹗老当益壮,宁移白首之心;穷且益坚,不坠青云之志。唐王勃忍一句,息一怒,饶一着,退一步。增广贤文忍一句,息一怒,饶一着,退一步。增广贤文第 6 章 关系数据库理论 1 理解并给出下列术语的定义:函数依赖、部分函数依赖、完全函数依赖
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 课后 习题 答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内