《数据库习题答案.ppt》由会员分享,可在线阅读,更多相关《数据库习题答案.ppt(31页珍藏版)》请在课桌文档上搜索。
1、数据库习题,一、解答题1、解释术语:数据、数据库、数据管理系统、数据库 系统、数据库应用系统、视图、数据字典。P19-20数据:是描述现实世界中各种具体事物或抽象概念的、可存储并具有明确意义的信息。数据库:是相互关联的数据集合。数据管理系统:是一个通用的软件系统,由一组计算机程序构成。数据库系统:是一个用户的应用系统得以顺利运行的环境。数据库应用系统:主要指实现业务逻辑的应用程序。视图:指不同的用户对同一数据库的每一种理解称为视图。数据字典:用于存储数据库的一些说明信息的特殊文件。,练习一(P48),2、简述数据抽象、数据模型及数据模式之间的关系 P26数据模型是数据抽象的工具,是数据组织和表
2、示的方 式;数据模式是数据抽象利用数据模型,将数据组织起来后得到的结果;总而言之,数据模式是数据抽象的结果。3、DBMS应具备的基本功能有哪些?P9数据独立性、安全性、完整性、故障恢复、并发控制,4、数据库中对数据最基本的4种操作是什么?P24增加、删除、修改、查询5、评价数据模型的3个要素是什么?P121)能够真实地描述现实系统2)能够容易为业务用户所理解3)能够容易被计算机实现6、数据模型的3个要素是什么?P24 数据结构、数据操作、数据约束,7、简述SQL语言的使用方式。P13一般有两种方式:SQL的交互式使用;用户通过开发应用系统与RDBMS交互。8、在数据库设计时,为什么涉及到多种数
3、据模型?P12因为目前商用化DBMS没有一个能够同时满足3项要求,为此,人们不得不走折中路线,设计一些中间的数据模型。9、数据库系统中的用户类型有哪些?P28-29最终用户、数据库应用开发人员、数据库管理员、其他与数据库系统有关的人员。,11、简述OLTP与OLAP间的区别。P42-43OLTP(联机事务处理)主要面向日常的业务数据管理,完成用户的事务处理,提高业务处理效率,通常要进行大量的更新操作,同时对响应时间要求比较高。OLAP(联机分析处理)注重数据分析,主要对用户当前及历史数据进行分析,辅助领导决策,通常要进行大量的查询操作,对时间的要求不太严格。,二、单项选择题1、(A)不是SQL
4、语言的标准。P156A.SQL-84 B.SQL-86 C.SQL-89 D.SQL-922、(D)数据模型没有被商用DBMS实现。P26A.关系模型 B.层次模型 C.网状模型 D.E-R模型3、(C)不是数据模型应满足的要求。P12A.真实描述现实世界B.用户易理解C.有相当理论基础D.计算机易实4、(B)最早使用SQL语言。P156A.DB2B.System RC.OracleD.Ingres,三、判断题1.一个数据库系统设计中,概念模式只有一个,而外模式则可有多个。()P112.每一种DBMS的实现,均是建立在某一种数据模型基础之上。()P7,一、研究所有若干研究室,每一个研究室多位科
5、研人员在指定的办公地点。每一位科研人员只属于一个研究所,有编号、姓名、性别和年龄。研究所承担了多个科研项目,包括责任人、项目号、项目名和开工时间(每位科研人员可以参加多个科研项目),每个科研项目有多位科研人员参加,科研人员参加科研项目均有相应的工作量,练习二(E-R图),研究所,研究室,科研人员,科研项目,有,承担,参加,有,1,n,1,n,m,n,工作量,项目号,项目名,责任人,开工时间,编号,姓名,性别,年龄,办公地点,m,n,二,某学院有基本实体集:系、教师、学生和课程。它们各有属性:系:系编号、系名、位置课程:课程号、课程名称、开课学期学生:学生学号、学生姓名、性别、地址教师:员工号、
6、教师姓名、办公室有如下语义设定每个系有一位系主任,有多位教师;一个教师仅在一个系任职;每个系开设多门不同课程;每门课程各由多位教师授课;一位教师可教多门课程;一个学生可以在不同的系选修多门课程。,系,教师,课程,学生,管理,工作,系编号,系名,位置,课程号,课程名称,开课学期,姓名,学号,性别,地址,员工号,姓名,办公室,开设,选修,1,1,1,n,1,n,授课,m,n,m,n,三,百货公司管辖若干连锁商店,每家商店经营若干商品,每家商店有若干职工,每个职工服务于一家商店。商店:店号、点名、店址、店经理商品:商品号、品名、单价、产地职工:工号、姓名、性别、工资、店号 在联系中反应商店销售商品的
7、月销量,职工参加工作的开始时间,商店,职工,商品,销售,工作,m,n,1,n,月销量,开始时间,店址,店名,店号,店经理,商品号,品名,单价,产地,工号,姓名,性别,工资,店号,练习三,请为一家IT培训的公司建立一个概念数据模型以满足该公司的数据需求。公司有:教师:教师编号、姓名、性别、年龄、职称;学员:学员编号、姓名、年龄、单位;培训课程:课程编号、名称、学时;教师应分属各教研组:组号、组名;学员分属各培训班:班号、班名、人数。实体间的联系及他们的属性有:教师属于教研组,一个组可有多名教师,但一个教师只属于一个教研组;学员属于培训班,一个班可有多名学员,但一个学员只属于一个培训班;学员学习课
8、程为多对多联系,含成绩属性;教师为培训班讲授课程,为m:n:k联系,含讲授年度属性。,1)请画出E-R图,要求标出实体的主键,联系的约束类型和键约束。2)将此E-R图转换为关系模型,要求标出各关系的主键,如果存在的话还应指明外键。,1),教研组,组号,组名,教师,教师编号,姓名,性别,年龄,职称,培训课程,培训班,学员,属于,授课,课程编号,名称,学时,学员编号,姓名,年龄,单位,人数,班名,班号,属于,学习,n,1,m,n,m,n,k,讲授年度,1,n,成绩,2)P116-120教研组(组号,组名),组号为主键。教师(教师编号,姓名,性别,年龄,职称,组号),教师编号为主键,组号为外键。培训
9、班(班号,班名,人数),班号为主键。学员(学员编号,姓名,年龄,单位,班号),学员编号为主键,班号为外键。培训课程(课程编号,名称,学时),课程编号为主键。授课(教师编号,课程编号,班号,授课年度),(教师编号,课程编号,班号)为主键,教师编号、课程编号和班号分别为外键。学习(课程编号,学员编号,成绩),(课程编号,学员编号)为主键,课程编号和学员编号分别为外键。,练习四(P153),设有如下3个关系:S(Sid(学号),Sname(姓名),Age(年龄),Sex(性别)SC(Sid(学号),Cid(课程号),Score(成绩)C(Cid(课程号),Cname(课程名),Teacher(教师)
10、)试用关系代数式表达下列查询,并且写出前4个的SQL查询语句:1、检索LIU老师所授课程的课程号和课程名。SELECT Cid,Cname FROM C WHERE Teacher=LIU,2、检索年龄大于 23岁的男学生的学号和姓名。SELECT Sid,Sname FROM S WHERE Age23 and Sex=male3、检索学号为S3学生所学课程的课程名与任课教师名。SELECT Cname,TeacherFROM SC,C WHERE C.Cid=SC.Cid AND S.Sid=S3,4、检索至少选修LIU老师所授课程中一门课的女学生姓名。SELECT Sname FROM
11、C,SC,S WHERE C.Teacher=LIU AND C.Cid=SC.Cid AND AND SC.Sid=S.Sid AND S.Sex=女5、检索WANG同学不学的课程的课程号。,6、检索至少选修两门课的学生学号。P147 例3-467、检索全部学生都选修的课程的课程号与课程名。8、检索选修课程包含LIU老师所授全部课程的学生学号。,练习五,SB(SN,SNAME,CITY)其中,S为供应商,SN为供应商代号,SNAME为供应商名字,CITY为供应商所在城市,主关键字为SN。PB(PN,PNAME,COLOR,WEIGHT)其中P为零件,PN为零件代号,PNAME为零件名字,CO
12、LOR为零件颜色,WEIGHT为零件重量,主关键字为PN。,JB(JN,JNAME,CITY)其中,J表示工程,JN为工程编号,JNAME为工程名字,CITY为工程所在城市,主关键字为JN。SPJB(SN,PN,JN,CITY)其中,SPJ表示供应关系,SN是为指定工程提供零件的供应商代号,PN为所提供的零件代号,JN为工程编号,QTY表示提供的零件数量,主关键字为SN,PN,JN,外部关键字为SN,PN,JN。,1)取出由供应商S1提供零件的工程名称;SELECT JNAME FROM JB,SPJB WHERE JB.JN=SPJB.JN AND SN=S12)取出供应商与工程所在城市相同
13、的供应商提供零件代号;SELECT DISTINCT PN FROM SB,JB,SPJB WHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY=JB.CITY,3)取出至少由一个和工程不在同一城市的供应商提供零件的工程代号;SELECT DISTTCT SPJB.JN FROM SB,JB,SPJB WHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITYJB.CITY 4)取出上海供应商不提供任何零件的工程的代号;SELECT DISTINCT JN FROM SPJBWHERE JN NOT IN(S
14、ELECT DISTINCT SPJB.JN FROM SB,SPJB WHERE SB.SN=SPJB.SN AND SB.CITY=上海),5)取出这样一些供应商代号,它们能够提供至少一种由红色零件的供应商提供的零件;SELECT DISTINCT SPJB.SN FROM PB,SPJBWHERE SPJB.PN IN(SELECT SPJB.PN FROM SPJB,SB,PB WHERE SB.SN=SPJB.SN AND PB.PN=SPJB.PN AND PB.COLOUR=红),6)取出所有这样的一些二元组,使得第1个城市的供应商为第2个城市的工程提供零件;SELECT DIS
15、TINCT SB.CITY,JB.CITY FROM SB,JB,SPJB WHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN,练习六(P295),设有关系模式:R(Sid,Sname,Cid,Cname,Score,Tid),其中,Sid、Sname、Cid、Cname、Score、Tid分别为学号、学生姓名、课程编号、课程名、成绩以及教师编号,并有如下语义要求:1)课程与教师之间的联系为1:1;2)学生与课程之间的联系为m:n;3)一名学生只能有一个学号,且学号唯一;4)一门课程只能有一个课程号,且课程号唯一;请完成以下任务:1)根据语义给出R的函数依赖;2)将该关系模式分解成3NF。,1)Sid Sname,Cid Cname,Cid Tid Tid Cid,(Sid,Cid)Score(Sid,Cid)Sname(Sid,Cid)Cname 2)Student(Sid,Sname)ElectiveC(Cid,Cname)Course(Sid,Cid,Score)Teachers(Tid),f,p,p,Thank you,