1.简述数据库系统的三级模式结构和两级映像。答:数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。(2分)模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式实际上是数据库数据在逻辑级上的视图,一个数据库只有一个模式,数据库模式以某一种数据模型为基础,统一综合地考虑了所有用户的需求,并将这些需求有机地结合成一个逻辑整体。(1分)外模式也称子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据购逻辑表示。外模式通常是模式的子集。一个数据库可以有多个外模式。(1分)内模式也称存储模式,一个数据库只有一个内模式,它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。(1分)2.关系的完整性有哪些?并用实例解释。答:1)实体完整性:主属性不能为空。例如学生(学号,姓名,性别,专业号,年龄)主属性学号不能为空2)参照完整性:属性F是基本关系R的外码,它与基本关系S的主码相对应,则F或者取空值,或者等于S中某个元组的主码值。学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)学生关系中的专业号3)用户自定义完整性例如某字段的取值在1~100之间3.实体间的联系有哪些?请举例说明。答:1:1班级和正班长1:n班级和学生M:N学生和课程4.数据库设计分为哪几个阶段?答:需求分析,概念结构设计,逻辑结构设计,物理设计,数据库实施阶段,数据库运行和维护。5.试说明B+树索引和聚簇分别适合用在什么地方?答:B+树索引适合用于某个值有很少行记录的情况,比如学生表中的学号适合建立B+树索引;聚簇适合于某个值有很多行记录的情况,比如学生表中系别适合建立聚簇。1.简述数据库管理系统的功能。1)数据定义。2)数据操纵。3)数据库运行管理。4)数据组织、存储和管理。5)数据库的建立和维护。6)数据通信接口。2.简述SQL语言的特点。答:SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,充分体现了关系数据库语言的特点和优点。其特点如下:1)综合统一2)高度非过程化3)面向集合的操作方式4)以同一种语法结构提供两种操作方式5)语言简洁,易学易用3、什么是数据库系统?答:数据库系统是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软、硬资源组成的系统。它包含关联数据的集合,DBMS和用户应用程序等。4、试述数据库完整保护的主要任务和措施。答:主要任务是保障数据的正确性,有效性,协调性,提高数据对用户的可用性。其措施如下:适时检查完整约束条件,保证语义完整。控制并发操作,使其不破坏完整性。在系统出现故障后,即时恢复系统。5、在倒排文件中,如果只建立了部分关键字的辅索引,如何进行查找?答:对询问中涉及的关键字,首先在已建立的辅索引中求指针的交集P,而后对P中所指记录逐个验证其它关键字是否与询问条件匹配,所有匹配的记录即为查询结果。1、什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?答:数据与程序的逻辑独立性:当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。数据与程序的物理独立性:当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。•2、数据库的完整性概念与数据库的安全性概念有什么区别和联系?答:数据的完整性和安全性是两个不同的概念,但是有一定的联系。前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(Garba:eInGarba:eout)所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。•3、试给出多值依赖、和4NF的定义。•4、试给出函数依赖、BCNF的定义。•5、简述嵌入式SQL语句与主语言之间的通信。首先用SQL通信区(SQLCommunicationArea,简称SQLCA)向主语言传递SQL语句的执行状态信息,使主语言能够据此控制程序流程;在程序运行中,主语言向SQL语句提供参数,使用主变量(hostvariable)输入数据;同时,程序把SQL语句查询数据库的结果交主语言进一步处理,其中使用主变量和游标(cursor)向主语言输出数据,从而实现了SQL语言的过程化工作。SQL语句执行后,系统要反馈给应用程序若干信息,主要包括描述系统当前工作状态和运行环境的各种数据,这些信息将送到SQL通信区SQLCA中。应用程序从SQLCA中取出这些状态信息,据此决定接下来执行的语句。•6、试述RDBMS查询优化的一般步骤。(l)把查询转换成某种内部表示,通常用的内部表示是语法树。(2)把语法树转换成标准(优化)形式。即利用优化算法,把原始的语法树转换成优化的形式。(3)选择低层的存取路径。(4)生成查询计划,选择代价最小的。•7、试述RDBMS查询优化的一般准则。答:下面的优化策略一般能提高查询效率:(l)选择运算应尽可能先做;(2)把投影运算和选择运算同时进行;(3)把投影同其前或其后的双目运算结合起来执行;(4)把某些选择同在它前面要执行的笛卡儿积结合起来成为一个连接运算;(5)找出公共子表达式;(6)选取合适的连接算法。•8、什么是数据库的逻辑结构设计?试述其设计步骤。答:数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本E一R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑结构。设计步骤为:(l)将概念结构转换为一般的关系、网状、层次模型;(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;(3)对数据模型进行优化。•9、数据字典的内容和作用是什么?答:数据字典是系统中各类数据描述的集合。数据字典的内容通常包括:(l)数据项;(2)数据结构;(3)数据流;(4)数据存储;(5)处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。数据字典通过对数据项和数据结构的定义来描述数据流和数据存储的逻辑内容。数据字典的作用:数据字典是关于数据库中数据的描述,在需求分析阶段建立,是下一步进行概念设计的基础,并在数据库设计过程中不断修改、充实、完盖。四、简答题1、什么是视图,其主要特点是什么?答:视图是以现存表的全部或部分内容建立起来的一个表。视图不是物理存在的,它不包含真正存储的数据,不占存储空间。但视图可以像一般的表那样操作,因此视图也称作虚表,而真正物理存在的表称作实表或基本表。2、什么是数据库系统的三级模式结构?这种体系结构的优点是什么?答:数据库系统的三级模式结构由外模式、模式和内模式组成。这种体系结构的优点:数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留组DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。而为了能够在内部实现这3个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。3、什么是数据管理?其发展经历了哪几个阶段,简要描述各阶段的主要特点。答:所谓数据管理是指对数据的组织、存储、检索和维护等工作,是数据处理的核心。数据管理技术随着计算机软件与硬件的发展经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。在人工管理阶段,没有统一的数据管理软件,对数据的管理完全由各个程序在其程序中进行。在文件系统阶段,部分实现了逻辑数据与物理数据的相互独立性。在数据库系统阶段,完成实现了逻辑数据与物理数据的相互独立,实现了数据共享,具有数据的冗余度小、有利于保证数据的完整性以及实现了对数据的集中管理等许多优点。4、系统数据库master中记录哪些信息?答:记录了SQLServer系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、SQLServer的初始化信息和其它系统数据库及用户数据库的相关信息。5、什么是索引?建立索引的作用有哪些?答:索引是按照一定顺序对表中一列或若干列建立的列值与记录行之间的对应关系表。在数据库系统中建立索引主要有以下作用:(1)快速存取数据;(2)保证数据记录的惟一性;(3)实现表与表之间的参照完整性;(4)在使用ORDERBY、GROUPBY子句进行数据检索时,利用索引可以减少排序和分组的时间。6、设计数据库备份策略时的基本思想是什么?答:数据库备份与数据库恢复是紧密联系在一起的,设计数据库备份策略时,应与数据库恢复结合起来考虑,其其本思想是以最小的代价恢复数据。7、设有学生关系STUDENT(学号,姓名,性别,出生日期),有关系代数表达式:π1,2,4(STUDENT)÷π4(σ1=’20060401’(STUDENT)),请用汉语句子写出该表达式所表示的查询。答:检索出与学号为“20060401”的学生同一天出生的所有学生的学号和姓名。8、在SQLSERVER2000中,存储过程有几类,分别简述各自的特点。答:在SQLSERVER2000中,存储过程有两类:系统存储过程和用户自定义存储过程。系统存储过程由系统自动创建,主要存储在master数据库中,主要功能是从系统表中获取信息,可被其他数据库调用。用户自定义存储过程由用户创建,其主要用于完成某一特定用户要求的功能。9、什么是日志文件?简述日志文件恢复事务的过程。答:日志文件是用来记录事务对数据库的更新操作的文件。用日志文件恢复事务(即事务故障的恢复的过程如下:(1)反向扫描文件日志(从最后向前扫描日志文件),查找该事务的更新操作。(2)对该事务的更新操作执行逆操作。即将日志记录中“更新前的值”写入数据库。如果日志记录中是插入操作,则做删除操作;若日志记录中是删除操作,则做插入操作;若是修改操作,则用修改前值代替修改后值。(3)继续反向扫描日志文件,查找该事务的其他更新操作,并做同样处理。(4)如此处理下去,直至读到此事务的开始标志,事物故障就恢复完成了。10、简述sqlserver中变量的分类及各类变量的特点。答:变量分为全局变量和局部变量。全局变量由系统提供且预先声明,通过在名称前加两个@符号区别于局部变量。局部变量用于保存数据值。如保存运算的中间结果,作为循环变量等。当首字母为@时,表示该标识符为局部变量;当首字母为#时,此标识符为一临时数据库对象,若开头含一个#,表示局部临时数据库对象名,若开头两个#,表示全局临时数据库对象名。11、在SQLServer中,数据库对象有表、约束和存储过程等,请简要说明这三个数据库对象的作用。答:表的作用是存储数据的逻辑结构;约束的作用是自动保持数据库的完整性;存储过程的作用是存储一段实现某个特定任务的代码,以便多次调用。12、系统数据库master中记录哪些信息?答:记录了SQLServer系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、SQLServer的初始化信息和其它系统数据库及用户数据库的相关信息。二、简答题1.简述数据库系统的特点。答:(1)数据结构化:数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。(2)数据的共享性高,冗余度低,易扩充:数据共享可以大大减少数据冗杂。(3)数据独立性高:分为物理独立性和逻辑独立性。(4)数据由DBMS统一管理和控制:DBMS提供一下控制功能:数据的安全性保护,数据的完整性