2018年南京航空航天大学民航学院834数据库原理及应用之数据库系统概论考研仿真模拟五套题
● 摘要
一、简答题
1. 定义并理解下列术语,说明它们之间的联系与区别:
(1)域,笛卡儿积,关系,元组,属性;
(2)主码,候选码,外码;
(3)关系模式,关系,关系数据库。
【答案】(1)域,笛卡尔积,关系,元组,属性
①域:一组具有相同数据类型的值的集合。
②笛卡儿积:两个分别为n 目和m 目的关系R 和S 的笛卡尔积是一个n+m列的元组的集合。
③关系:在
域上笛卡尔
积
④元组:关系中的每个元素是关系中的元组。
相同,为了加以区分,必须对每列起一个名字,称为属性。
(2)主码,候选码,外部码
①候选码:关系中能惟一标识一个元组的某一属性组。
②主码:若一个关系有多个候选码,则选定其中一个为主码。
③外部码:设F 是基本关系R 的一个或一组属性,但不是关系R 的码,如果F 与基本关系S 的主码Ks 相对应,则称F 是基本关系R 的外部码,简称外码。
(3)关系模式,关系,关系数据库
①关系模式:关系的描述称为关系模式,它可以形式化地表示为:R (U ,D , Dom ,F ),其中R 为关系名,U 为组成该关系的属性名集合,D 为属性组U 中属性所来自的域,Dom 为属性向域的映射集合,F 为属性间数据的依赖关系集合。
②关系:在
域上笛卡尔
积的子集称为关系,表示
为
关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳定的,而
关系是动态的、随时间不断变化的,因为关系操作在不断地更新着数据库中的数据。
③关系数据库:关系数据库有型和值之分。关系数据库的型也称为关系数据库模式,是对关系数据库的描述,它包括若干域的定义以及在这些域上定义的若干关系模式。关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常就称为关系数据库。
的子集称为关系,表示
为⑤属性:关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。由于域可以
2. 设有一个SPJ 数据库,包括S 、P 、J 、SPJ4个关系模式:
供应商表S 由供应商代码(Sno )、供应商姓名(Sname )、供应商状态(Status )、供应商所在城市(City )组成。零件表P 由零件代码(Pno )、零件名(Pname )、颜色(Color )、重量(Weight )组成。工程项目表J 由工程 项目代码(Jno )、工程项目名(Jmime )、工程项目所在
零件代码城市(City )组成。供应情况表SPJ 由供应商代码(Sno )、(Pno )、工程项目代码(Jno )、
供应数量(Qty )组成,表示某供应商供应某种零件给某工程项目的数 量为Qty 。请为“三建”工程项目建立一个供应情况的视图,包括供应商代码(Sno )、零件代码(Pno )、供应数 量(Qty )。针对该视图完成下列查询:
(1)找出“三建”工程项目使用的各种零件代码及其数量。
(2)找出供应商S1的供应情况。
(3)把对表S 的!NSERT 权限授予用户张勇,并允许他再将此权限授予其他用户。
(4)把查询SPJ 表和修改Qty 属性的权限授给用户李天明。
【答案】建立视图:
3. 叙述数据库中死锁产生的原因和解决死锁的方法。
【答案】(1)死锁产生的原因:封锁可以引起死锁。比如事务封锁了数据A ,事务
了数据B 。
但A 己被
成了死锁。
(2)解决死锁的常用方法有如下3种:
①要求每个事务一次就要将它所需要的数据全部加锁。
②预先规定一个封锁顺序,所有的事务都要按这个顺序实行封锁。
③允许死锁发生,当死锁发生时,系统就选择一个处理死锁代价小的事务,将其撤消,释放此事务持有的所有锁,使其他事务能继续运行下去。
4. 试述数据库管理员、系统分析员、数据库设计人员、应用程序员的职责。
【答案】(1)数据库管理员:负责全面地管理和控制数据库系统。具体职责包括:
①决定数据库的信息内容和结构。
②决定数据库的存储结构和存取策略。
封锁又申 请封锁数据B ,但因B 被封锁,所以也处于等待状态。这样,封锁,所以和只能等待。又申请封锁数据A , 处于相互等待状态而均不能结束,这就形
③定义数据的安全性要求和完整性约束条件。
④监督和控制数据库的使用和运行。
⑤数据库的改进和重组重构。
(2)系统分析员:系统分析员负责应用系统的需求分析和规范说明,要和用户及DBA 相结合,确定系统的硬件软件配置,并参与数据库系统的概要设计。
(3)数据库设计人员:数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。数据库设计人员必须参加用户需求调查和系统分析,然后进行数据库设计。在很多情况下,数据库设计人员就由数据库管理员担任。
(4)应用程序员:应用程序员负责设计和编写应用系统的程序模块,并进行调试和安装。
5. 试比较数据库管理系统与操作系统的封锁技术。
DBMS 封锁技术比操作系统封锁内容更加丰富, 技术更加复杂,【答案】同时其实现手段依赖
于操作系统提供的环境。
(1)操作系统封锁对象(即系统资源)单一,封锁对象状态确定,封锁力度不能改变,排他锁类型单一。
(2)DBMS 封锁对象多样,包括用户数据、索引、数据字典等,封锁对象动态改变,封锁力度可变,封锁类型多样。
两者的具体区别如表所不:
表 操作系统和数据库管理系统封锁技术的比较
6. 试述关系数据库管理系统的语言处理层处理一个数据操纵语言语句的大致过程。
【答案】DML 语句处理的过程包括:
(1)先对DML 语句进行词法分析和语法分析,并把外部关系名、属性名转换为内部名,通过词法和语法分析后生成语法分析树;
(2)根据数据字典中的内容进行查询检查,包括审核用户的存取权限和完整性检查;
(3)对查询进行优化,包括代数优化和存取路径优化;
(4)把选中的查询执行方案描述出来。
相关内容
相关标签