1、数据库系统概论复习资料:第一章:一选择题:1在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是 阶段。 A数据库系统 B文件系统 C人工管理 D数据项管理 答案:A2数据库的概念模型独立于 。A具体的机器和DBMS BE-R图 C信息世界 D现实世界 答案:A3数据库的基本特点是 。 A(1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余大,易移植 (4)统一管理和控制 B(1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制 C(1)数据可以共享(或数据结构化) (2)
2、数据互换性 (3)数据冗余小,易扩充 (4)统一管理和控制 D(1)数据非结构化 (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制 答案:B4. 是存储在计算机内有结构的数据的集合。 A数据库系统 B数据库 C数据库管理系统D数据结构 答案:B5数据库中存储的是 。 A数据 B数据模型 C数据以及数据之间的联系 D信息 答案:C6. 数据库中,数据的物理独立性是指 。 A数据库与数据库管理系统的相互独立 B用户程序与DBMS的相互独立 C用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 . D应用程序与数据库中数据的逻辑结构相互独立 答案:C7. 数据库的特点之一是数据的
3、共享,严格地讲,这里的数据共享是指 。 A同一个应用中的多个程序共享一个数据集合 B多个用户、同一种语言共享数据 C多个用户共享一个数据文件 D多种应用、多种语言、多个用户相互覆盖地使用数据集合 答案:D8.据库系统的核心是 。A数据库B数据库管理系统 C数据模型 D软件工具 答案:B9. 下述关于数据库系统的正确叙述是 。 A数据库系统减少了数据冗余 B数据库系统避免了一切冗余 C数据库系统中数据的一致性是指数据类型一致 D数据库系统比文件系统能管理更多的数据 答案:A10. 数将数据库的结构划分成多个层次,是为了提高数据库的 和 。 A数据独立性 B逻辑独立性 C管理规范性 D数据的共享
4、A数据独立性 B物理独立性 C逻辑独立性 D管理规范性 答案:B B11. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是答案:A 。 ADBS包括DB和DBMS BDDMS包括DB和DBS CDB包括DBS和DBMS DDBS就是DB,也就是DBMS12. 在数据库中,产生数据不一致的根本原因是 。 A数据存储量太大 B没有严格保护数据 C未对数据进行完整性控制 D数据冗余 答案:D13. 数据库管理系统(DBMS)是 A数学软件B应用软件 C计算机辅助设计 D系统软件 答案:D14. 数据库管理系统(DBMS)的主要功能是 B 。A修改数据库 B定义数据库
5、 C应用数据库D保护数据库 15. 数据库系统的特点是 、数据独立、减少数据冗余、避免数据不一致和加强了数据保护。 A数据共享 B数据存储 C数据应用 D数据保密 答案:A16据库系统的最大特点是 。 A数据的三级抽象和二级独立性 B数据共享性 C数据的结构化 D数据独立性 答案:A17. 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为 。 A数据定义功能 B数据管理功能 C数据操纵功能 D数据控制功能 答案:C18. 数据库管理系统是 。 A操作系统的一部分 B在操作系统支持下的系统软件 C一种编译程序 D一种操作系统 答案:B19.据库的三级模式结构中,描述
6、数据库中全体数据的全局逻辑结构和特征的是() A外模式 B内模式 C存储模式 D模式 答案:D20据库系统的数据独立性是指 B 。 A不会因为数据的变化而影响应用程序 B不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序 C不会因为存储策略的变化而影响存储结构 D不会因为某些存储结构的变化而影响其他的存储结构 答案:B21.信息世界中的术语,与之对应的数据库术语为 A文件 B数据库 C字段 D记录 答案:D22次型、网状型和关系型数据库划分原则是 。 A记录长度 B文件的大小 C联系的复杂程度 D数据之间的联系 答案:D23.传统的数据模型分类,数据库系统可以分为三种类型 。 A大型、
7、中型和小型 B西文、中文和兼容 C层次、网状和关系 D数据、图形和多媒体 答案:C24. 层次模型不能直接表示 A 1 :1关系 B1 :m关系 C m :n关系 D1 :1和1 :m关系 答案:C25. 数据库技术的奠基人之一E.FCodd从1970年起发表过多篇论文,主要论述的是 。 A层次数据模型 B网状数据模型 C关系数据模型 D面向对象数据模型 答案:C二、填空题1. 数据管理技术经历了 人工管理 、 文件系统 和 数据库系统 三个阶段。 答案:人工管理 文件系统 数据库系统2. 数据库是长期存储在计算机内、有 组织的、可共享的数据集合。 答案:组织 共享3DBMS是指 它是位于 用
8、户 和 之间的一层管理软件。 答案:数据库管理系统 用户 操作系统4. 数据库管理系统的主要功能有数据定义功能 、数据操纵功能 、数据库的运行管理和数据库的建立以及维护等4个方面。答案:数据定义功能 数据操纵功能5. 数据独立性又可分为逻辑数据独立性 和 物理数据独立性。 答案:逻辑数据独立性 物理数据独立性6. 当数据的物理存储改变了,应用程序不变,而由DBMS处理这种改变,这是指数据的 物理独立性 。 答案:物理独立性7. 数据模型是由数据结构 、数据操作 和完整性约束 三部分组成的。 答案:数据结构 数据操作 完整性约束8. 数据结构 是对数据系统的静态特性的描述,数据操作 是对数据库系
9、统的动态特性的描述。 答案:数据结构 数据操作9. 数据库体系结构按照 模式 、 外模式 和 内模式 三级结构进行组织。 答案:模式 外模式 内模式10. 实体之间的联系可抽象为三类,它们是 11 、 1m 和 mn 。 答案:11 1m mn11数据冗余可能导致的问题有 和 。 答案:浪费存储空间及修改麻烦 潜在的数据不一致性第一章补充作业部分:假设教学管理规定:一个学生可选修多门课,一门课有若干学生选修;一个教师可讲授多门课,一门课只有一个教师讲授;一个学生选修一门课,仅有一个成绩。 学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。成绩教师编号教师姓
10、名学生选修m课程教师讲授nn1学号姓名课程号课程名要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型;解答:第2章关系数据库一、选择题1、关系数据库管理系统应能实现的专门关系运算包括 。 A排序、索引、统计 B选择、投影、连接 C关联、更新、排序 D显示、打印、制表 答案:B2、关系模型中,一个关键字是 。A可由多个任意属性组成 B至多由一个属性组成 C可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成 D以上都不是 答案:C3、自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的 。 A元组 B行 C记录 D属性
11、 答案:D4、关系运算中花费时间可能最长的运算是 。 A投影 B选择 C笛卡尔积 D除 答案:C5关系模式的任何属性 A不可再分 B可再分 C命名在该关系模式中可以不惟一 D以上都不是 答案:A6在关系代数运算中,五种基本运算为 。A并、差、选择、投影、自然连接 B并、差、交、选择、投影 C并、差、选择、投影、乘积 D并、差、交、选择、乘积 答案:C7、设有关系R,按条件f对关系R进行选择,正确的是 ARR BR wv R C sf(R) DPf(R) 答案:CABCDEACC112XYyMMNIIJ8、如图所示,两个关系R1和R2,它们进行 运算后得到R3。ABCACD121XYyDEM12
12、5MNMIJKR1R3 A交 B并 C笛卡尔积 D连接 答案:D二、填空题1、一个关系模式的定义格式为 。 答案:关系名(属性名1,属性名2,属性名n)2、一个关系模式的定义主要包括 关系名 、属性名 、 属性类型 、 属性长度 和关键字 。 答案:关系名 属性名 属性类型 属性长度 关键字3、关系代数运算中,传统的集合运算有 、 和 。 答案:笛卡尔积 并 交 差4、关系代数运算中,基本的运算是 、 、 和。 答案:并 差 笛卡尔积 投影 选择5、关系代数运算中,专门的关系运算有 选择 、 投影 和 连接 。 答案:选择 投影 连接6、关系数据库中基于数学上两类运算是关系代数 和关系演算 。
13、答案:关系代数 关系演算 RABCDabcdabefabhkbdefbddlckcdckef7、已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主关键字是 ,系关系的外关键字 ,学生关系的主关键字是 ,外关键字 答案:系编号 无 学号 系编号三、应用题: SCDcdef关系R和S如下图所示,试计算RS。第3章关系数据库标准语言SQL一、选择题1、SQL语言是 的语言,易学习。 A过程化 B非过程化 C格式化 D导航式 答案:B2、SQL语言是 语言。 A层次数据库 B网络数据库 C关系数据库 D非数据库 答案:C3、SQL语言具有
14、 的功能。 A关系规范化、数据操纵、数据控制 B数据定义、数据操纵、数据控制 C数据定义、关系规范化、数据控制 D数据定义、关系规范化、数据操纵 答案:B4、SQL语言具有两种使用方式,分别称为交互式SQL和 。 A提示式SQL B多用户SQL C嵌入式SQL D解释式SQL 答案:C5、假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。 要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系 。 AS BSC,C CS,SC DS,C,SC 答案:D6、如下面的数据库的表中,若职工表
15、的主关键字是职工号,部门表的主关键字是部门号,SQL操作 不能执行。 A从职工表中删除行(025,王芳,03,720) B将行(005,乔兴,04,750)插入到职工表中 C将职工号为,001的工资改为700 D将职工号为,038的部门号改为03 答案:B 7、若用如下的SQL语句创建一个student表: CREATE TABLE student(NO C(4) NOT NULL, NAME C(8) NOT NULL, SEX C(2), AGE N(2) 可以插入到student表中的是 。A(1031,曾华,男,23) B(1031,曾华,NULL,NULL) C(NULL,曾华,男,
16、23) D(1031,NULL,男,23) 答案:B第8到第11题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下: S(S#,SN,SEX,AGE,DEPT) C(C#,CN) SC(S#,C#,GRADE)其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。8、检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是 a 。 ASELECT SN,AGE,SEX FROM S WHERE AGE(SELECT AGE FROM S WHERE SN=“王华”) BSELECT SN,AG
17、E,SEX FROM S WHERE SN“王华” CSELECT SN,AGE,SEX FROM SWHERE AGE(SELECT AGE WHERE SN=“王华”) DSELECT SN,AGE,SEX FROM S WHERE AGE王华AGE9、检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是 答案:DASELECT S# FORM SC WHERE C#=“C2” AND GRAD (SELECT GRADE FORM SC WHERE C#=“C2”) BSELECT S# FORM SC WHERE C#=“C2” AND GRADE IN (SEL
18、ECT GRADE FORM SC WHERE C#=“C2”) CSELECT S# FORM SC WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”) DSELECT S# FORM SC WHERE C#=“C2” AND GRADEALL (SELECT GRADE FORM SC WHERE C#=“C2”10、检索学生姓名及其所选修课程的课程号和成绩。正确的SELECT语句是 ASELECT SSN,SCC#,SCGRADE FROM S WHERE SS#=SCS# BSELECT SSN,SCC
19、#,SCGRADE FROM SC WHERE SS#SCGRADE CSELECT SSN,SCC#,SCGRADE FROM S,SC WHERE SS#=SCS# DSELECT SSN,SCC#,SCGRADE FROM SSC 答案:C11、检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的SELECT语句是 。 ASELECT S#,SUM(GRADE)FROM SC WHERE GRADE=60 GROUP BY S# ORDER BY 2 DESC HAVING COUNT(*)4 WHERE C#=“C2” AND GRADE (SE
20、LECT GRADE FORM SC WHERE C#=“C2”) BSELECT S# FORM SC WHERE C#=“C2” AND GRADE IN (SELECT GRADE FORM SC WHERE C#=“C2”)CSELECT S# FORM SC WHERE C#=“C2” AND GRADE NOT IN (SELECT GRADE FORM SC WHERE C#=“C2”) DSELECT S# FORM SC WHERE C#=“C2” AND GRADEALL (SELECT GRADE FORM SC WHERE C#=“C2”) 答案:D二、填空题1、SQL
21、是 结构化查询语言 。 答案:结构化查询语言2、视图是一个虚表,它是从 中导出的表。在数据库中,只存放视图的 ,不存放视图的 。 答案:一个或几个基本表 定义 视图对应的数据3、设有如下关系表R: R(No,NAME,SEX,AGE,CLASS) 主关键字是NO其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。写出实现下列功能的SQL语句。 插入一个记录(25,“李明”,“男”,21,“95031”); 。INSERT INTO R VALUES(25,“李明”,“男”,21,“95031”)插入“95031”班学号为30、姓名为“郑和”的学生记录; 。INSERT
22、 INTO R(NO,NAME,CLASS) VALUES(30,“郑和”,“95031”)将学号为10的学生姓名改为“王华”; 。UPDATE R SET NAME=“王华”WHERE NO10 将所有“95101”班号改为“95091”; 。UPDATE R SET CLASS“95091”WHERE CLASS“95101” 删除学号为20的学生记录; 。DELETE FROM R WHERE NO=20删除姓“王”的学生记录; 。DELETE FROMR WHERE NAME LIKE“王”第3章书面作业1、设学生课程数据库中有三个关系:学生关系S(S#,SNAME,AGE,SEX)
23、学习关系SC(S#,C#,GRADE) 课程关系C(C#,CNAME)其中S#、C#、SNAME、AGE、SEX、GRADE、CNAME分别表示学号、课程号、姓名、年龄、性别、成绩和课程名。用SQL语句表达下列操作(1)检索选修课程名称为“MATHS”的学生的学号与姓名 (2)检索至少学习了课程号为“C1”和“C2”的学生的学号(3)检索年龄在18到20之间(含18和20)的女生的学号、姓名和年龄 (4)检索平均成绩超过80分的学生学号和平均成绩(5)检索选修了全部课程的学生姓名(6)检索选修了三门课以上的学生的姓名答案:(1)SELECT S#,SNAME FROM S,SC,C WHERE
24、 S.S#=SC.S# AND C.C#=SC.C# AND CNAME= MATHS (2) SELECT S# FROM SC WHERE CNO=C1 AND S# IN( SELECT S# FROM SC WHERE CNO=C2) (3)SELECT S#,SNAME,AGE FROM S WHERE AGE BETWEEN 18 AND 20 (4) SELECT S# ,AVG(GRADE) 平均成绩 FROM SC GROUP BY S# HAVING AVG(GRADE)80(5) SELECT SNAMEFROM SWHERE NOT EXISTS (SELECT * F
25、ROM C WHERE NOT EXISTS (SELECT * FROM SC WHERE S#=S.S# AND C#=C.C# ) (6) SELECT SNAME FROM S,SC WHERE S.S#=SC.S# GROUP BY SNAME HAVING COUNT(*)3 2、设学生-课程数据库中包括三个表: 学生表:Student (Sno,Sname,Sex,Sage,Sdept) 课程表:Course(Cno,Cname,Ccredit)学生选课表:SC(Sno,Cno,Grade) 其中Sno、Sname、Sex、Sage、Sdept、 Cno、Cname、Ccredi
26、t 、Grade分别表示学号、姓名、性别、年龄、所在系名、课程号、课程名、学分和成绩。试用SQL语言完成下列项操作:(1)查询选修课程包括“1042”号学生所学的课程的学生学号(2)创建一个计科系学生信息视图S_CS_VIEW,包括Sno学号、Sname姓名、Sex性别;(3)通过上面第2题创建的视图修改数据,把王平的名字改为王慧平(4)创建一选修数据库课程信息的视图,视图名称为datascore_view,包含学号、姓名、成绩。答案:(1) SELECT DISTINCT SNO FROM SC SCX WHERE NOT EXISTS (SELECT * FROM SC SCY WHERE
27、 SCY.SNO = 1042 AND NOT EXISTS (SELECT * FROM SC SCZ WHERE SCZ.SNO=SCX.SNO AND SCZ.CNO=SCY.CNO); (2) CREATE VIEW S_CS_VIEW AS SELECT SNO,SNAME,SEX FROM STUDENT WHERE Sdept=CS (3)UPDATE S_CS_VIEW SET SNAME= 王慧平 WHERE SNAME= 王平(4) CREATE VIEW datascore_view AS SELECT SNO 学号、SNAME 姓名、GRADE 成绩 FROM STUD
28、ENT,SC,COURSE WHERE STUDENT.SNO=SC.SNO AND COURSE.CNO=SC.CNO AND CNAME= 数据库第4章数据库的安全性一、选择题1、下面哪个不是数据库系统必须提供的数据控制功能 。A安全性B可移植性C完整性D并发控制 答案:B2、保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。这是指数据的 。A安全性B完整性C并发控制D恢复 答案:A3、数据库的 完整性 是指数据的正确性和相容性。A安全性 B完整性 C并发控制D恢复 答案:B4、在数据系统中,对存取权限的定义称为 。答案:BA命令 B授权 C定义 D审计 5、数据库管理系统
29、通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的 。A可靠性B一致性C完整性D安全性 答案:D6、下列SQL语句中,能够实现“收回用户ZHAO对学生表(STUD)中学号(XH)的修改权”这一功能的是 C AREVOKE UPDATE(XH) ON TABLE FROM ZHAO BREVOKE UPDATE(XH) ON TABLE FROM PUBLICCREVOKE UPDATE(XH) ON STUD FROM ZHAO DREVOKE UPDATE(XH) ON STUD FROM PUBLIC7、把对关系SC的属性GRADE的修改权授予用户ZHAO的SQL语句是
30、 A)GRANT GRADE ON SC TO ZHAO B)GRANT UPDATE ON SC TO ZHAOC)GRANT UPDATE (GRADE) ON SC TO ZHAO D)GRANT UPDATE ON SC (GRADE) TO ZHAO 答案:C8、在SQL Server 中删除触发器用()。AROLLBACK B. DROP CDELALLOCATE D. DELETE 答案:B二、填空题1、保护数据安全性的一般方法是 设置用户标识和存取权限控制 。 答案:设置用户标识和存取权限控制2、安全性控制的一般方法有、和视图的保护五级安全措施。答案:用户标识鉴定存取控制 审计
31、 数据加密3、存取权限包括两方面的内容,一个是 ,另一个是 。 答案:要存取的数据对象对此数据对象进行操作的类型4、在数据库系统中对存取权限的定义称为授权 。 答案:授权5、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用 语句,收回所授的权限使用 语句。 答案:GRANT REVOKE6、DBMS存取控制机制主要包括两部分:自主存取控制,_强制存取控制_。 答案:强制存取控制7、当对某一表进行诸如()、 ()、 () 这些操作时,SQL Server 就会自动执行触发器所定义的SQL 语句。答案:INSERT,DELETE,UPDATE第5章数据库完整性一
32、、选择题:1、在数据库系统中,保证数据及语义正确和有效的功能是 ( d )A.并发控制 B.存取控制 C.安全控制 D.完整性控制 2、关于主键约束以下说法错误的是( )A. 一个表中只能设置一个主键约束 B.允许空值的字段上不能定义主键约束C.允许空值的字段上可以定义主键约束 D.、可以将包含多个字段的字段组合设置为主键 答案:C3、在表或视图上执行除了(D)以外的语句都可以激活触发器。A.Insert B. Delete C. Update D.Create 4、数据库的_是指数据的正确性和相容性。A安全性 B完整性 C并发控制 D恢复 答案:B5、在数据库的表定义中,限制成绩属性列的取值
33、在0到100的范围内,属于数据的_约束。A、 实体完整性B、参照完整性C、用户自定义D、用户操作 答案:C二、填空题1数据库的完整性是指数据的 . _和 。答案:实体完整性 参照完整性 用户定义完整性 2、实体完整性是指在基本表中,主属性不能取空值 。 答案:主属性不能取空值3、参照完整性是指在基本表中, 。 答案:外码可以是空值或者另一个关系主码的有效值4、为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不惟一时,DBMS就 。答案:拒绝此操作第6章关系数据理论一、选择题1、关系规范化中的删除操作异常是指 ,插入操作异常是指 。答案:A DA不该删除的数据被删除 B不该插入的数据被插入 C应该删除的数据未被删除 D应该插入的数据未被插入2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是 。 A关系规范化理论 B关系运算理论 C关系代数理论 D数理逻辑 答案:A3、规范化过程主要为克服数据库逻辑结构中的插入异常,删除异常以及冗余度大 的缺陷。 A数据的不一致性 B结构不合理 C冗余度大 D数据丢失 答案:C4、当关系模式R(A,B)已属于3NF,下列说法中