数据库课堂练习全(答案全)
数据库课后答案
第1章思考与实践1.选择题(1) 从数据库的整体结构看,数据库系统采用的数据模型有(C )。
A.网状模型、链状模型和层次模型 B.层次模型、网状模型和环状模型C.层次模型、网状模型和关系模型 D.链状模型、关系模型和层次模型(2) 数据库系统的构成为:数据库、计算机系统、用户和( D )。
A.操作系统 B.文件系统 C.数据集合 D.数据库管理系统(3) 用二维表形式表示的数据模型是( B )。
A.层次模型 B.关系模型 C.网状模型 D.网络模型(4) 关系数据库管理系统的3种基本关系运算不包括( A )。
A.比较 B.选择 C.连接 D.投影(5) 数据库DB、数据库系统DBS和数据库管理系统DBMS之间的关系是( B )。
A.DBMS包括DB和DBS B.DBS包括DB和DBMSC.DB包括DBS和DBMS D.DB、DBS和DBMS是平等关系(6) 在关系理论中,把二维表表头中的栏目称为( D )。
A.数据项 B.元组 C.结构名 D.属性名(7) 下面有关关系数据库主要特点的叙述中,错误的是( D )。
A.关系中每个属性必须是不可分割的数据单元B.关系中每一列元素必须是类型相同的元素C.同一关系中不能有相同的字段,也不能有相同的记录D.关系的行、列次序不能任意交换,否则会影响其信息内容(8) 以一定的组织方式存储在计算机存储设备上,能为多个用户所共享的与应用程序彼此独立的相关数据的集合称为( A )。
A.数据库 B.数据库系统 C.数据库管理系统 D.数据结构(9) 设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型是( B )。
A.m∶n B.1∶m C.m∶k D.1∶1(10) 在关系模型中,实现“关系中不允许出现相同的元组”的约束是通过( B )。
A.候选键 B.主键 C.外键 D.超键2.填空题(1) 关系数据库中每个关系的形式是(主外键引用0020 )。
数据库基础课后习题及答案
数据库基础课后习题及答案数据库基础课后习题及答案数据库是计算机科学中非常重要的一个概念,它用于存储和管理大量的数据。
在数据库基础课程中,学生通常需要完成一些习题来巩固所学的知识。
本文将介绍一些常见的数据库基础课后习题,并提供相应的答案。
一、选择题1. 数据库是指什么?A. 存储和管理数据的软件系统B. 存储和管理硬件设备的软件系统C. 存储和管理网络的软件系统D. 存储和管理操作系统的软件系统答案:A2. 数据库管理系统(DBMS)的主要功能是什么?A. 存储和管理数据B. 分析和处理数据C. 网络和通信D. 操作系统管理答案:A3. 下列哪个不属于数据库的特点?A. 数据共享B. 数据冗余C. 数据独立性D. 数据一致性答案:B4. 数据库中的数据是以什么形式存储的?A. 文件B. 表格C. 文本D. 图像答案:B5. 数据库中的主键是什么?A. 唯一标识一个记录的属性B. 存储在数据库中的所有数据C. 数据库中的表格D. 数据库中的索引答案:A二、填空题1. 数据库中的关系是指什么?关系是指数据之间的联系和关联。
2. 数据库中的SQL是什么意思?SQL是结构化查询语言(Structured Query Language)的缩写。
3. 数据库中的DDL是什么意思?DDL是数据定义语言(Data Definition Language)的缩写。
4. 数据库中的DML是什么意思?DML是数据操作语言(Data Manipulation Language)的缩写。
5. 数据库中的索引有什么作用?索引可以提高数据库的查询效率,加快数据检索的速度。
三、简答题1. 数据库的三级模式是什么?数据库的三级模式包括外模式、概念模式和内模式。
外模式是用户对数据库的直接接口,概念模式是数据库的全局逻辑结构,内模式是数据库在物理存储上的表示。
2. 数据库的ACID是什么意思?ACID是数据库事务的四个特性,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
Visual FoxPro数据库程序设计课后习题参考答案及解析
第一章Visual FoxPro 数据库基础第一节数据库基础知识1、答案:数据描述事物特性的数据内容存储在某一媒体上的数据形式解析:本题考查的知识点是数据的概念及包括的内容。
数据是存储在某一媒体上能够识别的物理符号,其概念包括两个方面:一是描述事物特性的数据内容;二是存储在某一种媒体上的数据形式。
做好该题的关键是熟练掌握数据的概念及包含的两个方面。
2、答案:C解析:本题考查的知识点是数据处理。
数据处理是指将数据转换成信息的过程。
完成这一过程的中心问题是管理好数据。
3、答案:C解析:20世纪50年代中期到20世纪50年代后期是计算机数据管理的人工管理阶段;从20世纪50年代后期到20世纪60年代中后期是计算机数据管理的文件系统阶段;20世纪60年代中后期到20世纪70年代后期是计算机数据管理的数据库系统阶段;20世纪70年代是计算机数据管理的分布式数据库系统阶段;20世纪80年代以后开始将面向对象程序设计引入计算机科学领域之中。
4、答案:描述事物的数据本身相关事物之间的联系解析:本题考查的知识点是数据库的概念及相关的内容。
数据库是存储在计算机存储设备上的结构化的相关数据集合,其概念包括两个方面:一是描述事物的数据本身;二是相关事物之间的联系。
做好该题的关键是熟练掌握数据库的概念及包含的两个方面。
5、答案:D解析:本题考查的知识点是数据库系统的组成。
本题需要记忆。
在Visual FoxPro中,数据库系统由计算机硬件系统、数据库集合、数据库管理系统、相关软件、数据管理员(用户)。
第二节关系数据库1、答案:C解析:数据库管理系统支持的数据模型有3种:层次模型、网状模型和关系模型。
层次模型是指用树形结构表示实体及其之间联系的模型,网状模型是指用网状结构表示实体及其之间联系的模型,关系模型是指用二维表结构表示实体及其之间联系的模型。
2、答案:C解析:本题考查的知识点是数据库管理系统中的关系的基础知识。
在Visual FoxPro中,一个关系就是一个二维表。
数据库技术及应用基础教程课后习题参考答案
《数据库技术及应用基础教程》部分课后习题参考答案(本答案仅供参考,如有误请指正)第1章练习题二:1.A 2.B 3.B 4.C第2章练习题一:1.C 2.D 3.C 4.A(题目中“状态”应更正为“网状”) 5.C6.B7.D8.C9.C 10.A11.A 12.C 13.B 14.C 15A16.D(题目中“为加以”应更正为“不加以”)第3章练习题二:1.C 2.D 3.A 4.A 5.A6.A7.A8.A9.B 10.C11.C 12.D13.B 14.A15.A(13题中“OpenFrom”应更正为“OpenForm”)练习题三:1.ACCESS2000数据库提供了选择查询、参数查询、交叉表查询、操作查询和SQL查询等五种查询方式。
2.表、查询、窗体、报表、数据访问页、宏和模块七大对象。
3.设计视图和窗体视图4.()5.宏是能自动执行某种操作的命令的统称。
其功能是自动执行某种操作,控制程序流程。
6.报表由报表页眉、页面页眉、主题、页面页脚和报表页脚组成。
(p139)7.报表有纵栏式、表格式、图表报表、标签报表、子报表等类型(page133-138)8.ACCESS2000基本宏操作有53种。
实验题二:1.SELECT 书名,数量,位置AS 存放位置FROM 图书表;2.SELECT 单位,姓名, 借书人表.借书证号,借书日期,还书日期FROM 借书人表,借阅表WHERE 借书人表.借书证号=借阅表.借书证号;3.SELECT 出版社名,SUM(数量) AS 总数量FROM 图书表GROUP BY出版社名;4.SELECT 出版社名,书名,SUM(数量) AS 总数量FROM 图书表GROUP BY出版社名,书名;5.UPDA TE 图书表SET 数量=数量+5;第4章练习题三:1.(1)系统规划(2)表的设计和管理(3)根据数据表进行查询的设计和管理(4)窗体的设计和管理(5)报表的设计和管理(6)系统维护与管理。
数据库系统教程课后答案
数据库系统教程课后答案数据库系统是一种用于管理和组织大量数据的软件系统,它通过数据模型、数据结构和数据操作等方式来实现数据的存储、访问、更新和管理等功能。
数据库系统广泛应用于各个领域,如企业管理、电子商务、科学研究等。
在数据库系统的学习过程中,会出现一些练习题目和问题,需要我们进行思考和解答。
下面我将结合一些常见的课后答案,对数据库系统进行详细的解析。
首先,我们需要了解数据库的基本概念和组成部分。
数据库是按照一定的数据模型组织、存储和管理数据的集合,它由数据库管理系统(DBMS)、数据库、数据库模式(或称为数据库结构)、数据库实例(或称为数据系统)等组成。
其中,数据库管理系统是进行数据库管理的软件系统,它负责数据库的创建、维护和管理等操作。
接着,我们需要了解数据库的设计和规范化。
数据库设计是指根据用户的需求和系统的要求,将现实世界的数据和关系转化为数据库模式的过程。
在设计数据库时,要符合一定的规范化原则,如第一范式、第二范式和第三范式等。
规范化可以提高数据库的性能、减少数据冗余,同时也方便数据库的操作和维护。
然后,我们需要了解数据库的查询和操作。
数据库查询是指根据用户的需求,从数据库中检索出符合条件的数据的过程。
查询语言是进行数据库查询的工具,如结构化查询语言(SQL)。
SQL语言包括数据定义语言(DDL)、数据操纵语言(DML)和数据控制语言(DCL)等。
DDL用于定义和管理数据库的结构,如创建表、定义键等;DML用于对数据库中的数据进行操作,如插入、更新和删除等;DCL用于控制数据库的安全性和权限,如授权和回收权限。
此外,我们还需要了解数据库的事务和并发控制。
事务是指一组对数据库的操作,要么全部执行成功,要么全部放弃。
事务具备ACID特性,即原子性、一致性、隔离性和持久性。
并发控制是指多个事务同时对数据库进行操作时,保证数据库的一致性和完整性的措施。
并发控制可以通过加锁、多版本并发控制(MVCC)、时间戳等方式来实现。
(完整版)数据库课后题参考答案
(完整版)数据库课后题参考答案学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。
(1)请设计此学校的教学管理的E —R 模型。
(2)将E —R 模型转换为关系模型.2)系 (系号,系名,系主任)教师 (教师号,教师名,职称,系号) 学生(学号,姓名,年龄,性别,系号) 项目(项目号,名称,负责人)课程(课号,课程名,学分,教师号) 选修(课号,学号,分数) 负责(教师号,项目号,排名)3、设有下图所示的医院组织。
试画出其E —R 图及关系模式并用关系代数方法写出下面之查询公式:病房医生 病人图3-1 某医院人员组织关系框图 编号 名称所在位置主任姓名编号姓名患何种病 病房号编号 姓名年龄职称管辖病房号① 找出外科病房所有医生姓名; ② 找出管辖13号病房的主任姓名; ③ 找出管辖病员李维德的医生姓名。
关系模式:病房(编号、名称、所在位置、主任姓名)医生(编号、姓名、年龄、职称、管辖病房号) 病人(病号、姓名、患何种病、病房号)答案:就医病房号医生编号病人编号医生姓名位置负责①、''(外科位置医生姓名=∏σ() ②、'13'(=∏病房号主任姓名σ(病房))③、''(李维德病人姓名医生姓名=∏σ()第三章 习题一、单项选择题1、如果要在Windows 平台上运行DB2应用程序访问运行在UNIX 上的数据库服务器,需要在Windows 上安装那种产品?( )A DB2 企业服务器版B DB2 个人版C DB2 连接器D DB2 运行时客户端 答案:D2、下面那种产品不允许远程的客户端应用程序连接到该服务器?( ) A DB2 快速版 B DB2 个人版C DB2 企业服务器版D DB2 工作组服务器版 答案:B3、一个软件公司要开发一个需要访问DB2 for Linux 和DB2 for z/OS 的应用程序.下面那个产品最能满足这种需求?( )A DB2企业服务器版B DB2工作组服务器版C DB2连接器企业版D DB2通用开发版 答案:D4、下面那种产品不被认为是DB2服务器? ( ) A DB2快速版B DB2工作组服务器版C DB2个人版D DB2企业服务器版 答案:C5、下面那两种工具可以向数据库发出SQL语句进行查询? ()A 命令窗口B 命令中心C 命令行处理器D 命令处理器E 控制中心答案:B、C6、下面那种情况下,健康中心会发出报警:()A 表中的一行被删除B 运行LOAD工具C 当性能指标超过了预先定义的范围D 一条SQL语句由于语法错误而没有执行成功,并报错.答案:C二、填空题:1.DB2工具①可以用来在DB2中调度SQL脚本定期执行。
数据库课后习题答案(仅供参考)
第1章数据库基础知识答案一、简答题1.(张红超提供)DB:数据库(Datebase,DB)是按照一定的方式组织的、存储在外部存储设备上的、能为多个用户共享的、与应用程序相互独立的相关数据集合。
DBMS:数据库管理系统(Database Management System,DBMS)是对数据库中数据资源进行统一管理和控制的软件,它提供数据定义、数据操作、数据库管理、数据库建立和维护以及通信等功能。
DBS:数据库系统(Database System,DBS)是由计算机系统、数据库及其描述机构、数据库管理系统和有关人员组成,是由这几个方面组成的具有高度组织性的总体。
区别:数据库就是存放数据的仓库,数据库管理系统就是用来管理数据库的,其中数据库系统是一个通称,包括数据库、数据库管理系统、数据库管理人员等的统称,是最大的范畴。
2.(张红超提供)(1) 实体(Entity)是现实世界客观存在并可相互区别的事物可以是具体的人、事、物或抽象的概念(某次活动,某种思想)。
(2) 属性(Attribute)实体所具有的特性或特征。
一个实体可以由若干个属性来刻画。
分“型”属性名和“值”取值。
(3)主码(Primary Key,关键字)唯一标识实体的属性或属性组称为主码。
3.(张红超提供)(1)需求分析:收集和分析数据库所有用户的信息需求和处理需求。
(2)概念结构设计:对用户需求进行综合、归纳与抽象,把用户的信息要求统一到一个整体逻辑结构中,通常用E-R图表示概念模型。
这是数据库设计的关键。
(3)逻辑结构设计:将概念模型转换为某个DBMS所支持的数据模型(如关系模型),形成数据库的模式和外模式。
(4)物理设计:确定数据库的物理结构并对其评价(时间效率和空间效率)物理设计的结果是形成数据库的内模式。
(5)数据库实施:在计算机系统上建立起实际数据库结构、装入数据、测试、试运行的过程。
(6)数据库运行和维护:数据库投入运行标志着开发任务的基本完成和维护工作的开始。
数据库课后习题及答案
一、选择题【数据库系统的概述】1、数据库(DB)、数据系统(DBS)、数据管理系统(DBMS)之间关系是(C)A、DB包含DBS和DBMSB、DBMS包含DB和DBSC、DBS包含DB和DBMSD、没有任何关系2数据库系统的核心是(B)A、数据模型B、数据库管理系统C、数据库D、数据库管理员3、数据独立性是数据库技术的重要特点之一。
所谓数据独立性是指(D)A、数据与程序独立存放B、不同的数据被存在不同的文件中C、不同的数据只能被对应的应用的程序所使用D、以上三种说法都不对4、用树形结构表示实体之间的联系的模型是(C)A、关系模型B、网状模型C、层次模型D、以上三个都是5、“商品”与“顾客”两个实体之间的联系一般是(D)A、一对一B、一对多C、多对一D、多对多6、在E-R图中,用来表示实体的是(A)A、矩形B、椭圆形C、菱形D、三角形7、在数据库管理系统提供的数据语言中,负责数据的模式定义与数据的物理存取构建的是(A)A、数据定义语言B、数据转换语言C、数据操纵语言D、数据控制语言8、数据库系统的三级模式结构中,下列不属于三级结构的是(B)A、内模式B、抽象模式C、外模式D、概念模式9、在数据库管理系统提供的语言中,负责数据的完整性、安全性的定义与检查以及并发控制、故障恢复功能的是(D)A、数据定语言B、数据转换语言C、数据操纵语言D、数据控制语言10、下面关于数据系统叙述正确的是(B)A、数据库系统避免了一切冗余B、数据库系统减少了数据冗余C、数据库系统文件能管理更多的数据D、数据库系统中数据的一致性是指数据类型的一致11下列叙述中,错误的是(C)A、数据库技术的根本目标是要解决数据共享的问题B、数据库设计是指设计一个能满足用户要求,性能良好的数据库C、数据库系统中,数据的物理结构必须与逻辑结构一致D、数据库系统时一个独立的系统,但是需要操作系统的支持12、在数据库管理系统提供的数据语言中,负责数据的查询及增删改等操作的是(D)A、数据定义语言B、数据转换语言C、数据控制语言D、数据操纵语言13、下列关于数据库的描述中,正确的是(A)A、数据库是一个结构化的数据结合B、数据库是一个关系C、数据库是一个DBF文件D、数据库是一个组文件14、在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是(D)A、外模式B、内模式C、存储模式D、模式15、(B)是存储在计算机内有结构的数据的集合。
数据库课后题答案
数据库课后题答案1)查询全体图书的图书号,书名,作者,出版社,单价。
SELECT * FROM 图书2)查询全体图书的信息,其中单价打8折,并且将该列设置别名为’打折价’ 。
SELECT 图书号,书名,作者,出版社,单价*0.8 ‘打折价’ FROM 图书3)显示所有借阅者的读者号,并去掉重复行。
SELECT DISTINCT 读者号FROM 借阅4)查询所有单价在20到30之间的图书信息。
SELECT * FROM 图书WHERE 单价BETWEEN 20 AND 305)查询所有单价不在20到30之间的图书信息。
SELECT * FROM 图书WHERE 单价NOT BETWEEN 20.00 AND 30.006)查询机械工业出版社、科学出版社、人民邮电出版社的图书信息SELECT * FROM 图书WHERE 出版社IN (‘机械工业出版社’, ‘科学出版社’, ‘人民邮电出版社’)7)查询既不是机械工业出版社、也不是科学出版社出版的图书信息SELECT * FROM 图书WHERE 出版社NOT IN (‘机械工业出版社’, ‘科学出版社’)8)查找姓名的第二个字符是’建’并且只有两三个字符的读者的读者号、姓名。
SELECT 读者号,姓名FROM 读者WHERE 姓名LIKE ‘_建_’9)查找姓名以’王’开头的所有读者的读者号、姓名。
SELECT 读者号,姓名FROM 读者WHERE 姓名LIKE ‘王%’10)查找姓名以’王’、’张’或’李’开头的所有读者的读者号、姓名。
SELECT 读者号,姓名FROM 读者WHERE 姓名LIKE ‘[王张李]%’11)查找姓名不是以’王’、’张’或’李’开头的所有读者的读者号、姓名。
SELECT 读者号,姓名FROM 读者WHERE 姓名NOT LIKE ‘[王张李]%’12)查询无归还日期的借阅信息。
SELECT * FROM 借阅WHERE 归还日期IS NULL13)查询有归还日期的借阅信息。
(完整版)数据库练习习题及答案解析
欢迎阅读第一章习题一、单项选择题1.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(A)。
A. DBS包括DB和DBMSB. DBMS包括DB和DBSC. DB包括DBS和DBMSD. DBS就是DB,也就是DBMS2. 下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是(D)。
I.人工管理阶段II.文件系统阶段III.数据库阶段3.A.C.4.A.B.C.D.5.A.C.6.A.C.7.A.C.8.A.C.9.AC10. 在E-R图中,用来表示属性的图形是(B)A 矩形B 椭圆形C 菱形D 平行四边形二、填空题1. 描述数据库全体数据的全局逻辑结构和特性的是_____模式______。
2. ____数据的物理独立性__________是指数据库的物理(存储)结构改变时,尽量不影响整体逻辑结构、用户的逻辑结构以及应用程序。
3. 数据库系统与文件管理系统相比较,数据的冗余度___低______ ,数据共享性_____高____。
4. 用树形结构表示实体类型及实体间联系的数据模型称之为___层次模型___。
5.模式/内模式映像为数据库提供了____物理_____独立性。
6.数据库中对数据的操作可以以数据项为单位,也可以以____记录____为单位。
7.数据库用户分为四类,分别是___数据库管理员___、____系统分析员____、_____应用程序员______和_____最终用户______。
8.数据模型由_____数据结构_____、_____数据操作______和______数据的完整性约束条件_____三部分组成。
9.数据管理技术的发展经过三个阶段,分别是___人工管理阶段___、___文件系统阶段___和______数据库系统阶段_______。
10.从数据库管理系统的角度划分数据库系统的体系结构,可分为___外模式__、_____模式_______和_____内模式______三层。
(完整版)SQL Server 数据库案例教程课后习题答案
《SQL Server 2008 数据库案例教程》练习题及模拟试卷答案第 1 章一、判断题1.数据库技术是是计算机数据处理与信息管理系统的核心。
(√)2.数据是用于描述现实世界中具体事物或抽象概念,可存储的数字符号。
(×)3.数据库是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。
(√)4.数据库管理系统是一个按数据结构来存储和管理数据的服务器管理系统。
(×)5.关系数据库,是建立在关系模型基础上的数据库。
(√)二、单选题1.数据(Data)是一些可存储并具有明确意义的(A)A.符号B.图形C.文字D.数字2.人工阶段计算机用于数值计算,没有操作系统及管理数据的软件。
这一阶段的年代是(C)A.19 世纪80 年代B. 20 世纪20 年代C.20 世纪50 年代D. 20 世纪80年代3.在网页中常用的图像格式是(D)A..bmp 和.jpgB..gif 和.bmpC. .png 和.bmpD. .gif 和.jpg4.数据库系统的重要特征是什么?(D)A.数据的独立性和动态性B.数据的静态性和独立性C.数据的动态性和共享性D.数据的独立性和共享性三、多选题1.与数据库技术密切相关的基本概念有(ABCD)A.数据B. 数据库C. 数据库管理系统D. 数据库系统2.数据库可分为哪几种类型?(ABC)A.关系型数据库B. 网状数据库C. 层次数据库D.树形数据库3.DBMS 提供数据操作语言 DML,为用户提供了哪些操作?(ABCD)A.数据的追加 B.数据的删除 C.数据的更新 D.数据的查询4.DBMS 要分类组织、存储和管理各种数据,包括哪些内容?(ABC)A.数据字典B. 用户数据C. 存取路径D.服务器5.目前,DBMS 常见品牌有哪些公司?(ABC)A.微软公司的 SQL Server B.IBM 公司的 DB2 C.甲骨文公司的 ORACLE D.索尼公司的 MySQL四、填空题1.数据库(管理)技术经历了人工管理阶段和文件管理阶段。
数据库课后答案(简约版)
数据库课后答案(简约版)1.什么是数据,数据库,数据库管理系统,数据库系统?数据:是数据库中存储的基本对象;是描述事物的符号纪录;与语义不可分割.数据库:是长期存储在计算机内,有组织的,可共享的大量数据的集合.数据库管理系统:位于用户和操作系统之间的一层数据管理软件;是计算机的基础软件,也是一个大型复杂的软件系统.数据库系统:是指在计算机系统中引入数据库后的系统,一般由数据库,DBMS,应用系统,DBA 构成.数据库技术经历阶段: 人工管理----文件系统----数据库系统数据库系统的特点: 1.数据结构化2.数据的共享性高,冗余度低,易扩充3.数据独立性高4.数据由DBMS统一管理和控制从数据库最终用户角度看,数据库系统的结构分为:单用户结构, 主从式结构, 分布式结构, 客户/服务器, 浏览器/服务器.2.试述数据系统的三级模式结构,这种结构的优点是什么?数据库的三级模式: 外模式,模式,内模式.{ 外模式: 也称子模式或用户模式,是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述. 模式: 也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述. 内模式: 也称存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式. } 这种结构的优点: 数据库的三级模式是对数据的三个抽象级别,它对数据的具体组织留给DBMS管理,使用户能逻辑地抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式.为了能够在内部实现这三个抽象层次的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:外模式/模式映像,模式/内模式映像.这是这两层映像保证了数据库中的数据能够具有较高的逻辑独立性和物理独立性.3.什么是物理独立性?什么是逻辑独立性?为什么数据库系统具有数据与程序的独立性?数据与程序的物理独立性: 当数据库的存储结构发生改变,由数据库管理员对模式/内模式映像作相应改变,可以使模式保持不变,从而应用程序也不必改变. 数据与程序的逻辑独立性: 应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性.数据库系统具有数据和程序的独立性的原因: 数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去.另外,由于数据的存取由DBMS管理,用户不必考虑存取路径等细节,从而简化了应用程序的编制,大大减少了应用程序的维护和修改.4.什么是候选码,主码,外部码?候选码: 若关系中的某个属性组的值能够唯一地标识一个元组,则称该属性组为候选码.主码: 若一个关系有许多候选码,则选定其中一个为主码.外部码: 设F是基本关系R的一个或一组属性,但不是关系R的码.K 是基本关系S的主码.如果F与K相对应,则称F是R的外码.5.等值连接和自然连接的区别和联系是什么?的连接运算称为等值连接.它是从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:自然连接是一种特殊的等值连接.它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉.即若R和S 具有相同的属性组B,则自然连接可记作:6.什么是基本表?什么是视图?两者的区别和联系是什么?基本表是本身独立存在的表.一个关系就对应一个基本表,一个(或多个)基本表对应一个存储文件. 视图是从一个或几个基本表导出的表,视图是一个虚表.两者区别: 即基本表是实表,数据库可存放其定义及其对应数据;视图是虚表,是由基本表导出的表,数据库只存放其定义而不存放其对应数据.两者联系:视图在概念上与基本表相同,用户可以如同基本表那样使用视图,另外可以在视图上再定义视图.7.所有的视图是否都可以更新?为什么?不是的,因为视图时不实际存储数据的虚表,因此对视图的更新,最终要转为对基本表的更新.而有些视图的更新不能唯一有意义地转换成相对应基本表的更新,所以不是所有的视图都是可更新的.8.什么是数据库的安全性?什么是计算机系统安全性?数据库的安全性: 是指保护数据库以防止不合法的使用造成的数据泄露,更改或破坏.计算机系统安全性: 是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件,软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到修改或泄露等.三类安全性问题: 技术安全类, 管理安全类, 政策法律类9.什么是数据库中自主存取控制方法和强制存取控制方法?自主存取控制方法(DAC): 在此方法中,用户对于不同的数据库对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将拥有的存取权限转授给其它用户. 强制存取控制方法(MAC): 在此方法中,每一个数据库对象被标以一定的密级,每一个用户也被授予某一个级别的许可证.对于任意一个对象,只有具有合法许可证的用户才可以存取.10.什么是数据完整性?什么是完整性约束条件?数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据. 数据的安全性是保护数据库防止恶意的破坏和非法的存取.完整性约束条件也称为完整性规则,是数据库中的数据必须满足的语义约束条件.SQL标准使用了一系列概念来描述完整性,包括关系模型的实体完整性,参照完整性和用户定义完整性.11.数据库设计分为哪几个阶段?每个阶段做哪些工作?1.需求分析阶段即进行数据库设计之前需准确了解与分析用户需求.2.概念结构设计阶段即通过对用户需求进行集合、归纳与抽象,形成一个独立于具体DBMS的概念模型.3.逻辑结构设计阶段即将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化.4.物理设计阶段即为逻辑数据模型选取一个最适合应用环境的物理结构.5.数据库实施阶段即根据逻辑设计和物理设计的结构建立数据库,编制与调试应用程序,组织数据入库,并进行试运行.6.数据库运行和维护阶段即在数据库系统运行过程中必须不断地对其进行评价、调整和修改.12.设计概念结构时如何区分实体和属性?实体与属性之间并没有形式上可以截然划分的界限,但可以给出两条准则:1.作为”属性”,不能再具有需要描述的性质.”属性”必须是不可分的数据项,不能包含其它属性.2.”属性”不能与其它实体具有联系,即E-R图中所表示的联系是实体之间的联系.凡满足上述两条准则的事物,一般均可以作为属性对待.13.各个分视图在集成时可能会产生哪些冲突?冲突主要有三类: 属性冲突, 命名冲突, 结构冲突.14.E-R图在转换成关系模型时,遵循哪些原则?一个实体型转换为一个关系模式.实体的属性就是关系的属性,实体的码就是关系的码.对于实体型之间的联系则有以下不同的情况:1.一个1:1联系可以转换为一个独立的关系模式,也可以与任意一段对应的关系模式合并.2.一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并.3.一个m:n联系转换为一个关系模式.4.3个或3个以上实体间的一个多元联系可以转换为一个关系模式.5.具有相同码的关系模式可合并.15.数据物理设计的内容和方法是什么?内容:1.为关系模式选择存取方法;2.设计关系、索引等数据库文件的物理存储结构.方法:1.索引方法 2.聚簇方法 3.HASH方法16.数据库实施阶段和运行阶段分别有哪些需要做的工作?实施阶段:1.数据的载入 2.应用程序的编码和调试运行阶段:1.数据的转储和恢复 2.数据的安全性和完整性控制3.数据库性能的监督、分析和改造4.数据库的重组织和重构造17.什么是事务?四个特性是什么?恢复技术能保证事务的哪些特性?事务是: 一个数据库操作序列;一个不可分割的工作单位;恢复和并发控制的基本单位.四个特性:原子性、一致性、隔离性、持续性(ACID)恢复技术保证:原子、一致、持续性.18.数据库运行中可能产生的故障有哪几类?故障大致可分为:1.事务内部的故障 2.系统故障 3.介质故障 4.计算机病毒其中123影响事务的正常执行, 34破坏数据库数据.19.数据库恢复的基本技术有哪些?1.数据转储2.登记日志文件20.数据库转储的意义是什么?试比较各种数据转储方法.数据转储是数据库恢复中采用的基本技术.所谓转储即DBA定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程.静态转储实现简单,但会降低数据库的可用性.动态转储不用等待正在运行的用户事务结束,也不会影响新事务的运行,但不能保证正确有效.海量转储从恢复的角度看,使用它得到的后台副本进行恢复一般说来会更方便些.但如果数据库很大,事务处理又十分频繁,则增量转储方式更实用更有效.21.什么是日志文件?为什么要设立日志文件?日志文件是用来记录事务对数据库的更新操作的文件,主要有两种格式:以记录为单位的日志文件和以数据块为单位的日志文件.日志文件在数据库恢复中起着非常重要的作用,具体是:1.事务故障恢复和系统故障恢复必须用日志文件.2.在动态转储方式中必须建立日志文件,后备副本和日志文件结合起来才能有效地恢复数据库.3.在静态转储方式中,也可以建立日志文件.所以,有必要建立日志文件.22.登陆日志文件时为什么必须先写日志文件,后写数据库?把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作.有可能在这两个操作之间发生故障,即这两个写操作只完成了一个.如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了.如果先写日志,但没有修改数据库,按日志文件恢复时只不过是多执行一次不必要的UNDO操作,并不会影响数据库的正确性.所以为了安全,一定要先写日志文件,后写数据库.23.数据库为什么要并发控制?数据库的重要特征是它能为多个用户提供数据共享.当多个用户并发地存取数据库时就会产生多个事务同时存取同一数据的情况.若对并发控制不加控制,就可能会存取和存储不正确的数据,破坏事务的一致性和数据库的一致性.所以数据库管理系统必须提供并发控制机制.并发控制技术能保证事务的:隔离性、一致性.24.并发控制可能会产生哪几类数据不一致?用什么方法能避免各种不一致的情况?并发操作带来的数据不一致包括三类:1.丢失修改2.不可重复读3.读”脏”数据避免不一致性的方法和技术是并发控制.而并发控制的主要技术是封锁、时间戳和乐观控制法.其中,最常用的技术是封锁技术.25.解释封锁、活锁、死锁、排它锁、共享锁、并发事务调度、可串行化调度、两段锁协议? 封锁: 事务T在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对其加锁.加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象.活锁: 如果事务T1封锁了数据R,事务T2又请求封锁R,于是T2等待.T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的请求,T2仍等待.然后T4又请求封锁R,当T3释放了R上的封锁之后系统又批准了T4的请求……T2有可能永远等待,这就是活锁的情形.死锁: 如果事务T1封锁了输入R2,然后T1又请求封锁R2,因T2已经锁了R2,于是T1等待T2释放R2上的锁.接着T2又申请封锁R1,因T1已经封锁了R1,T2也只能等待T1释放R1上的锁.这样就出现了T1在等待T2,而T2又在等待T1的局面,T1和T2两个事务永远不能结束,形成死锁.排它锁: 又称为写锁,X锁.若事务T对数据对象A加上X锁,则只允许T读取和修改A,其它任何事务都不能再对A加任何类型的锁,直到T 释放A上的锁.共享锁: 又称为读锁,S锁.若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其它事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁.并发事务调度: 事务的执行次序称为”调度”.如果利用分时的方法,同时处理多个事务,则称为事务的并发调度.可串行化调度: 多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的结果相同,称这种角度策略为可串行化的调度.两段锁协议: 所谓的”两段”锁的含义是:1.扩展阶段----可以申请封锁,但是不能解除任何已取得的封锁.2.收缩阶段----可以释放封锁,但不能申请新的封锁.两段锁协议规定所有事务都要遵循下列规则:1.在对任何数据进行读写操作之前,事务首先要获得对该数据的封锁.2.在释放一个封锁之后,事务不再获得任何其它封锁.关系数据模型: 数据结构+ 数据操作+ 完整性约束.。
数据库课堂练习全(答案全)
一.以下涉及的教学数据库含有4个关系,方便起见,其名称简化为T、S、C和SC 教师关系T(Tno,Tname,Title)学生关系S(Sno,Sname,Age,Sex)课程关系C(Cno,Cname,Tno)选课关系SC(Sno,Cno,Score)1.查询选修了课程号为C2课程的学生学号和姓名2.查询至少选修了钟教授所教课程中一门课程的学生学号和姓名。
3.查询不选修C2课程的学生姓名和年龄。
4.查询选修了全部课程的学生姓名。
5.查询至少有学号为S2和S4学生选修的课程的课程号。
解:1.ΠSno,Sname(6Cno=’C2’(S SC))2.ΠSno,Sname(6Tname=’钟’(S SC T C))3.ΠSname,Age(S)——ΠSname,Age(6Cno=’C2’(S SC))4.ΠSname(S(ΠSno,Cno(SC)))——ΠCno(C))5.ΠCno(61.Sno=’S2’∧2.Sno=’S4’∧(SC*SC))二、以下涉及的教学数据库含有4个关系,方便起见,其名称简化为T、S、C和SC教师关系T(Tno,Tname,Title)学生关系S(Sno,Sname,Age,Sex)课程关系C(Cno,Cname,Tno)选课关系SC(Sno,Cno,Score)要求检索女同学选修课程的课程名和任课教师名。
1.试写出该查询的关系代数表达式Πcname,Tname(sex='女'(S SC C T))2.画出查询表达式的语法树3.使用启发式优化算法,对语法树进行优化,并画出优化后的语法树三、用SQL完成下面的查询和操作1.查询不选修C2课程的学生姓名和年龄。
2.查询至少选修课程号C2和C4的学生学号。
3.求每一教师每门课程的学生选修人数(超过30人),要求显示教师工号、课程号和学生人数。
查询结果按人数升序排列,人数相同按工号升序、课程号按降序排列。
4.查询只开设一门课程的教师工号和姓名。
数据库课后练习及答案
第一章:一、单选题1.以下的英文缩写中表示数据库管理系统的是( B)。
A. DB B.DBMS C.DBA D.DBS2.数据库管理系统、操作系统、应用软件的层次关系从核心到外围分别是(B )。
A. 数据库管理系统、操作系统、应用软件B. 操作系统、数据库管理系统、应用软件C. 数据库管理系统、应用软件、操作系统D. 操作系统、应用软件、数据库管理系统3.DBMS是(C )。
A. 操作系统的一部分B.一种编译程序 C.在操作系统支持下的系统软件 D.应用程序系统4.数据库系统提供给用户的接口是(A )。
A.数据库语言 B.过程化语言 C.宿主语言D.面向对象语5.(B )是按照一定的数据模型组织的,长期存储在计算机内,可为多个用户共享的数据的聚集。
A.数据库系统 B.数据库C.关系数据库D.数据库管理系统6. ( C)处于数据库系统的核心位置。
A.数据模型 B.数据库C.数据库管理系统D.数据库管理员7.( A)是数据库系统的基础。
A.数据模型B.数据库C.数据库管理系统D.数据库管理员8.( A)是数据库中全部数据的逻辑结构和特征的描述。
A.模式B.外模式 C.内模式 D.存储模式9.(C )是数据库物理结构和存储方式的描述。
A.模式 B.外模式 C.内模式D.概念模式10.( B)是用户可以看见和使用的局部数据的逻辑结构和特征的描述》 A.模式B.外模式C.内模式D.概念模式11.有了模式/内模式映像,可以保证数据和应用程序之间( B)。
A.逻辑独立性B.物理独立性C.数据一致性D.数据安全性12.数据管理技术发展阶段中,文件系统阶段与数据库系统阶段的主要区别之一是数据库系统( B)。
A.有专门的软件对数据进行管理B.采用一定的数据模型组织数据C.数据可长期保存D.数据可共享13.关系数据模型通常由3部分组成,它们是(B )。
A. 数据结构、数据通信、关系操作B. 数据结构、关系操作、完整性约束C. 数据通信、关系操作、完整性约束D. 数据结构、数据通信、完整性约束14.用户可以使用DML对数据库中的数据进行(A )操纵。
数据库课后习题
一选择题 第一单元 1.数据库DB,数据库系统DBS 数据库管理系统 DBMS 之间的关系() A.DB 包含 DBS 和 DBMS C.DBS 包含 DB 和 DBMS B.DBMS 包含 DB 和 DBS D.没有任何关系 2.数据库系统的核心是() A.数据模型B.数据库管理系统 C.数据库D.数据库管理员 3.数据独立性是数据库技术的重要特点之一,所谓数据独立性是指 A.数据和程序独立存放 B.不同的数据被存放在不同的文件中 C 不同的数据只能被对应的应用程序所使用 D.以上说法均不正确 4.用树形结构表示实体之间联系的模型是 () A.关系模型 B.网状模型 C 层次模型 D.以上都是 5.商品”和 顾客”这两个实体集之间的联系一般是 () A.—对一 B.一对多C 多对一 D.多对多 6.在E-R 图中,用来表示实体的图形是 () A.矩形B.椭圆形C 菱形D.三角形 7.在数据库管理系统提供的数据语言中, 负责数据的模式定义与数据的物理存取构建的语言 是() A.数据定义语言 B.数据转换语言C.数据操控语言 D.数据控制语言8.数据库系统的三级模式结构中,下列不属于三级模式的是 A.内模式B.抽象模式C.外模式D.概念模式 9.在数据库管理系统提供的语言中, 故障恢复灯功能的是() A.数据定义语言 B.数据转换语言 负责数据的完整性,安全性定义与检查以及并发控制, C.数据操纵语言 D.数据控制语言 10.下列关于数据系统描述正确的是 A.数据库系统避免了一切的冗余 C 数据库系统比文件系统能管理更多的数据 D.数据库系统中的数据的一致性是指数据类型的一致() B.数据库系统减少了数据冗余 11.下列描述中,错误的是() A. 数据库技术的根本目标是要解决数据共享的问题 B. 数据库设计是指设计一个能满足用户要求,性能良好的数据库C 数据库系统中,数据的物理结构必须与逻辑结构一致 D.数据库系统是一个独立的系统,但是需要操作系统支持12.在数据库管理系统提供的数据语言中,负责数据的查询及增,删,改等操作的是A.数据定义语言B.数据转换语言C.数据控制语言D.数据操纵语言13.下列有关数据库的描述正确的是()A数据库是一个结构化的数据集合 B.数据库是一个关系C数据库是一个DBF文件D.数据库是一组文件14.在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是A.外模式B.内模式C存储模式D.模式15.()是存储在计算机里有结构的数据的集合A.数据库系统B.数据库C数据库管理系统 D.数据结构16.()是位于用户和操作系统之间的一层数据管理软件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.以下涉及的教学数据库含有4个关系,方便起见,其名称简化为T、S、C和SC 教师关系T(Tno,Tname,Title)学生关系S(Sno,Sname,Age,Sex)课程关系C(Cno,Cname,Tno)选课关系SC(Sno,Cno,Score)1.查询选修了课程号为C2课程的学生学号和姓名2.查询至少选修了钟教授所教课程中一门课程的学生学号和姓名。
3.查询不选修C2课程的学生姓名和年龄。
4.查询选修了全部课程的学生姓名。
5.查询至少有学号为S2和S4学生选修的课程的课程号。
解:1.ΠSno,Sname(6Cno=’C2’(S SC))2.ΠSno,Sname(6Tname=’钟’(S SC T C))3.ΠSname,Age(S)——ΠSname,Age(6Cno=’C2’(S SC))4.ΠSname(S(ΠSno,Cno(SC)))——ΠCno(C))5.ΠCno(61.Sno=’S2’∧2.Sno=’S4’∧(SC*SC))二、以下涉及的教学数据库含有4个关系,方便起见,其名称简化为T、S、C和SC教师关系T(Tno,Tname,Title)学生关系S(Sno,Sname,Age,Sex)课程关系C(Cno,Cname,Tno)选课关系SC(Sno,Cno,Score)要求检索女同学选修课程的课程名和任课教师名。
1.试写出该查询的关系代数表达式Πcname,Tname(sex='女'(S SC C T))2.画出查询表达式的语法树3.使用启发式优化算法,对语法树进行优化,并画出优化后的语法树三、用SQL完成下面的查询和操作1.查询不选修C2课程的学生姓名和年龄。
2.查询至少选修课程号C2和C4的学生学号。
3.求每一教师每门课程的学生选修人数(超过30人),要求显示教师工号、课程号和学生人数。
查询结果按人数升序排列,人数相同按工号升序、课程号按降序排列。
4.查询只开设一门课程的教师工号和姓名。
5.把平均成绩大于80分的男同学的学号和平均成绩存入另一个已存在的表S_Score(Sno,A VG_Score)中。
解:1.不选C2的姓名和年龄select Sname,Sagefrom S,SCWhere s.sno=sc.sno and o not in ‘C2’;2.至少选修C2,C4的学号select A.snofrom sc as A scasBwhere A.sn=B.sno and o=’C2’and o=’C4’3.select Tno o,count(Sno)from C,SCwhere o=ogroup by Tno, o having count(s.sno)>30order by count(s.sno), Tno,o DESC4.select Tno, Tnamefrom Twhere Unique(select Tnofrom Cwhere C.Tno=T.Tno)5.Insert into S_Score(Sno,A VG_Score)select Sno, avg(Score)from SCwhere Sno(select Snofrom Swhere Sex=’男’)group by Snohaving Arg(Score)>80四、设某商业集团数据库中有三个实体集。
一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。
商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品也可放在多个商店销售,每个商店销售一种商品,有月销售量;商店与职工间存在着“聘用”联系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。
1.试画出ER图,并在图上注明属性、联系的类型。
2.将ER图转换成关系模型,并注明主键和外键。
商店商店编号商店名地址商品商品号商品名规格单价销售商店编号商品号职工职工编号姓名性别业绩五、查询计算机学生选修的所有课程名称1.写出SQL2.画出查询树、语法树,利用代数优化对原始语法树进行优化,画出优化语法树答:1.SQL:select cnameFrom s,sc,cwhere o=o andsc.sno=s.sno andsdept=’计算机系’2.六、设有关系模式R(职工编号,日期,日营业额,部门名,部门经理),该模式记录商店里每个职工的日营业额以及职工所在的部门和经理信息。
如果规定:每个职工只在一个部门工作;每个部门只有一个经理。
则:1.根据上述规定,写出模式R的基本FD和码;关系模式R(职工编号,日期,日营业额,部门名,部门经理)码:日期和职工编号2.说明R不是2NF的理由,并把R分解成2NF模式集非主属性:部门各部分依赖于码分解:R1(职工编号,日期,日营业额)R2(职工编号,部门名,部门经理)3.进而分解成3NF模式集R1(职工编号,日期,日营业额)R2(职工编号,部门名)R3(部门名,部门经理)七、设有关系模式R(运动员编号,比赛项目,成绩,比赛类别,比赛主管)存储运动员比赛成绩及比赛类别、主管等信息。
如果规定:每个比赛项目只属于一个比赛类别;每个比赛类别只有一个比赛主管。
则:1.根据上述规定,写出模式R的基本FD和码;关系模式R(运动员编号,比赛项目,成绩,比赛类别,比赛主管)码:运动员编号,比赛项目2.说明R不是2NF的理由,并把R分解成2NF模式集非主属性:比赛类别部分依赖于码分解:R1(运动员编号,比赛项目,成绩)R2(比赛项目,比赛类别,比赛主管)3.进而分解成3NF模式集R1(运动员编号,比赛项目,成绩)R2(比赛项目,比赛类别)R3(比赛类别,比赛主管)八、设有两个事务:T1: Read(A); T2: Read(B);Read(B); Read(A);If A=0 then B=B+1; If B=0 then A=A+1;Write (B); Write (A);给定初始值A=B=0,试给出一种这两个事务的并发执行的可串行化调度,并说明并发事务操作是否正确的基本准则是什么?解答:并发事务操作是否正确的基本准则是并发执行是否可串行化。
九、某一研究所要对科研项目进行计算机管理,该研究所有若干科研人员,每个人员有职工号、姓名、性别、出生年月、专业和研究方向等,每个科研项目有研究项目编号、项目名称、起始时间和完成时间、项目经费额、经费来源、项目负责人、参加项目研究人员、每个人员所承担的任务等信息。
该研究所规定:一个科研项目可以有多名研究人员参加,一个研究人员也可以参加多个研究项目。
(1)请画出此管理系统的概念模型(用E —R 图表示); (2)将上述E —R 图转换成为关系模式。
解:该管理系统的概念模型如下图所示(2)根据E —R 图向关系模型的转换规则,可以得到如下关系模式:科研项目(项目编号,项目名称,起始时间和完成时间,项目经费额,经费来源,项目负责人)职工(职工号,姓名,性别,出生年月,专业,研究方向) 参加(职工号,项目编号,工作任务)十、图书Book :书号(Bno )、类别(Bclass)、出版社(Bpublisher)、作者(Bauthor)、书名(Bname)、定价(Bprice)、数量(Bqty)、购买日期(Bbuydate)、备注(Bremark);读者Reader :编号(Rno)、姓名(Rname)、单位(Runit)、性别(Rsex)、电话(Rtel)借阅Borrow :书号(Bno)、读者编号(Rno)、借阅日期(Borrowdate)、还书日期(Returndate)(1)写出查询请求“被数据库中所有读者借阅过的图书书号和书名”所对应的关系代数表达式;(2)写出查询请求“没有借阅过‘计算机’类图书的所有读者号和读者名”所对应的关系代数表达式及优化后的关系代数语法树;(3)用SQL 语句完成下列操作① 查询所有‘计算机’类图书的书号、书名、出版社、作者和定价; ②查询借阅过‘计算机’类图书的的读者号、姓名及单位; ③ 查询没有借阅过任何图书的读者号、姓名和单位; ④ 求“机械工业出版社”出版的各类图书的平均定价; ⑤ 新增一个读者,信息为(“R0468”,“张萍”,“外语学院”,“女”,“7874357”);十一、学生、教师和课程的关系模式STC(SNo ,SN ,SA ,TN ,CN ,G),其中6个属性分别为学生的学号、姓名、年龄、教师的姓名、课程名以及学生的成绩。
假设学生有重名,课程名也可能有重名。
又假设每个教师只教一门课,但一门课可有几个教师开设。
当某个学生选定某门课后,其上课教师就固定了。
(1)写出键码和函数依赖;(2)分解关系模式使之属于BC 范式。
十:答:(1))())(Re )((,,Bookader BorrowBname Bno Rno Rno Bno πππ⨯÷ (2)))(()(Re '',,ader BorrowBook ader Bclass Rname Rno Rname Rno ⨯⨯-=计算机σππ(3)① Select Bno,Bname,Bpublisher,Bauthor,Bprice From Book Where Bclass=’计算机’ ② Select Rno,Rname,RunitFrom Reader Where Rno in(Select distinct Rno From Borrow Where Bno in (select BnoFrom Book Where Bclass=’计算机’))③ Select Rno,Rname,Runit From ReaderWhere Rno not in (Select distinct Rno From Borrow)④ Select Bclass,Avg(Bprice) From BookWhere Bpublisher=’ 机械工业出版社’ Group by Bclass ⑤ Insert into ReaderValues(“R0468”,“张萍”,“外语学院”,“女”,“7874357”) 十一 答:- BorrowReaderBook× σBclass=’计算机’ σBook.Bno=Borrow.BnoReader× σReader.Rno=Borrow.Rno πRno,RnameπRno,Rname 结果。