2017年山西师范大学数据库原理(加试)考研复试核心题库
● 摘要
一、简答题
1. 今有三个事务的一个调度
冲突可串行化的调度吗?为什么?
【答案】该调度是冲突可串行化的调度。
交换得到
再交换得到:
因为Sc2是一个串行调度。因此该调度足 是一个冲突可串行化调度。
2. 定义并解释以下术语:模式,外模式,内模式,数据定义语言,数据操纵语言。
【答案】(1)外模式:亦称子模式或用户模式,数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
(2)模式:亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通常是模式的子集。
(3)内模式:亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。
(4)数据定义语言(Data Definition Language,DDL ):用来定义数据库模式、外模式、内模式的语言。
(5)数据操纵语言(Data Manipulation Language, DML ):用来对数据库中的数据进行查询、插入、删除和修改的语句。
3. 分析传统RDBMS 的哪些技术应该在非关系数据管理系统中继承和发展。
【答案】传统RDBMS 的一致性和ACID 特性在非关系数据管理系统中继续和发展。
4. 试述SQL 的特点。
【答案】SQL 有以下五个特点:
(1)综合统一:SQL 语言集数据定义语言DDL 、数据操纵语言DML 、数据控制语言DCL 的功能于一体。在关系模型中实体和实体间的联系均用关系表示,这种数据结构的单一性带来了数据操作符的统一性,查找、插入、删除、更新等每一种操作都只需一种操作符,从而克服了非关系系统由于信息表示方式的多样性带来的操作复杂性。
(2)高度非过程化:用SQL 语言进行数据操作,只要提出“做什么”,而无需指明“怎么做”,
因此无需了解存取路径、存取路径的选择以及SQL 语句的操作过程。这有利于提高数据独立性。
(3)面向集合的操作方式:SQL 语言采用集合操作方式,不仅操作对象和查找结果可以是元组的集合,而且插入、删除、更新操作的对象也可以是元组的集合。
(4)以同一种语法结构提供两种使用方式:SQL 语言既是自含式语言,又是嵌入式语言。作为自含式语言,它能够独立地用于联机交互的使用方式;作为嵌入式语言,它能够嵌入到高级语言程序中,供程序员设计程序时使用。
(5)语言简捷,易学易用。
5. 规范化理论对数据库设计有什么指导意义?
【答案】规范化理论为数据库设计人员判断关系模式的优劣提供了理论标准,可用以指导关系数据模型的优化,用来预测模式可能出现的问题,为设计人员提供了自动产生各种模式的算法工具,使数据库设计工作有了严格的理论基础。
6. 为什么要引进意向锁?意向锁的含义是什么?
【答案】(1)引进意向锁是为了提高封锁子系统的效率,封锁子系统支持多种封锁粒度。原因是在多粒度封锁方法中一个数据对象可能以两种方式加锁——显式封锁和隐式封锁。因此系统在对某一数据对象加锁时不仅要检查该数据对象上有无(显式和隐式)封锁与之冲突,还要检查其所有上级结点和所有下级结点,看申请的封锁是否与这些结点上的(显式和隐式)封锁冲突,这样的检查方法效率很低,为此引进了意向锁。
(2)意向锁的含义是:对任一结点加锁时,必须先对它的上层结点加意向锁。
引进意向锁后,系统对某一数据对象加锁时,不必逐个检查与下一级结点的封锁冲突。
二、应用题
7. 利用Sale 数据库进行数据的访问、添加、删除等操作的联系。
(1)建立一个ODBC 数据源,要求连接销售管理系统Sale 数据库。
(2)利用ADO 访问Sale 数据库中表Product 。
(3)利用JDBC 访问Sale 数据库中表Product 。
【答案】(1)在使用ODBC 时应创建ODBC 源,具体步骤如下:
第一步,选择“控制面板”中的“管理工具”,再双击“数据源(ODBC ) ”,打开“ODBC 数据源管理器” 对话框,选择“系统DSN ”选项卡。
第二步,在“系统DSN ”中单击“添加”按钮,则打开“创建数据源”对话框,选择“SQLServer ”数据库类型。
第三步,单击“完成”按钮,贝U 打开“建立到SQL Server的新数据源”对话框,在“名称”文本对话框中 输入Sale ,在“服务器”中选择服务器名称为local 。
第四步,单击“下一步”按钮后,在打开的对话框中选择“使用用户输入登录ID 和密码的SQL Server验证” 单击按钮。在“登录ID ”文本框中输入sa ,在“密码”文本框中输入sa 。
第五步,单击“下一步”按钮后,选择“更改默认的数据库为”复选框,并在下拉列表框中选择Sale 。 第六步,单击“完成”按钮完成ODBC 连接的创建。
(2)使用ADO 访问数据库Sale 的步骤如下:
第一步,ADO 中的Connection 对象可实现ASP 程序与后台数据库的连接,其代码为:
第二步,创建完数据库连接对象后,就需要打开数据库连接,其代码为:Corm. Open
第三步,打开数据库后就可以访问数据库了,可以用RecordSet 对象方便地查询数据库记录集。
第四步,对数据库访问结束后,可以用Close 方法及时关闭各对象,以便释放所占资源,其代码为:
(3)使用JDBC 访问数据库Sale 的步骤如下:
第一步,要在应用程序中加载JDBC 驱动程序。通常使用Class. forName( )方法加载,需要注意的一点就是要设好类路径classpath ,确保JDBC 驱动在类路径中。
第二步,成功加载JDBC 驱动程序后,负责管理JDBC 驱动程序的类DriverManager 会识别加载的驱动程序。于是DriverManager 就调用方法getconnection ( )来连接数据库:
第三步,获取Connection 对象以后,可以用Connection 对象的方法来创建一个Statement 对象的实例,来对数据库进行操作。
为一个Connection 对象的实例,用con 的方法来创建一个Statement 对象的实例
( );
执行了 SQL 语句生成了一个名为Product 的表