数据库简答题分解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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 : e InGarba : e out )所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。
• 3、试给出多值依赖、和4NF的定义。
• 4、试给出函数依赖、BCNF的定义。
• 5、简述嵌入式SQL语句与主语言之间的通信。
首先用SQL通信区(SQL Communication Area,简称SQLCA)向主语言传递SQL语句的执行状态信息,使主语言能够据此控制程序流程;在程序运行中,主语言向SQL语句提供参数,使用主变量(host variable)输入数据;同时,程序把SQL语句查询数据库的结果交主语言进一步处理,其中使用主变量和游标(cursor)向主语言输出数据,从而实现了SQL 语言的过程化工作。
SQL语句执行后,系统要反馈给应用程序若干信息,主要包括描述系统当前工作状态和运行环境的各种数据,这些信息将送到SQL通信区SQLCA中。应用程序从SQLCA中取出这些状态信息,据此决定接下来执行的语句。
• 6、试述RDBMS查询优化的一般步骤。
( l )把查询转换成
某种内部表示,通常用的内部表示是语法树。