数据库原理与应用 2023年春季学期复习资料。
仔细看复习资料,没有答案的题目,请自己解答)
一、 概念题(自己准备答案)
1、 封锁。
封锁就是事物t在对某个数据对象,例如表、记录等操作之前,先向系统发出请求,对其加锁。加锁后事物t就对该数据对象有了一定的控制,在事物t释放它的锁之前,其他的事务不能更新此数据对象,封锁是实现并发控制的一个非常重要的技术。封锁包含了排它锁和共享锁。
2、 游标。
a 允许定位在结果集的特定行。
b 从结果集的当前位置检索一行或一部分行。
c 支持对结果集中当前位置的行进行数据修改。
d 提供不同级别的可见性支持。
3、 并发控制。
是指当同时有多个事务在执行时,为了保证一个事物的执行不受其他事物的干扰所采取的措施,并发控制的的主要方法是加锁。为了保证并发执行的事务是正确的,一般要求事物遵守两段锁协议。
4、 关系完整性规则。
是对关系的某种约束条件,用于保证关系数据库中数据的正确性和可靠性,它包含了实体完整性规则、参照完整性规则、域完整性规则。
5、 dbms的主要功能。
主要功能包括数据定义功能、数据操作功能、数据库运行管理功能、数据库的建立和维护功能、数据通讯接口功能、数据组织、存储和管理功能。
6、 数据库设计的基本步骤。
数据库设计的基本步骤分为系统需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施阶段、数据库运行和维护阶段。
7、 简述产生死锁的原因以及预防死锁的三种方法。
一个事物若申请锁未被批准,则需要等待其他事务释放锁,当事务之前出现循环等待时,如果不加干预,则会一起等待下去,从而产生死锁。
预防死锁的方法:
每个事物一次将所有要使用的数据全部加锁 。
预先对数据对象规定一个封锁顺序,所有事务都按这个顺序封锁。
当事物申请锁未被批准时,不等待加锁而是让一些事物回滚重新执行。
8、 请画出数据库系统的组成结构图。
9、 最小函数依赖集。
函数依赖集f如果满足f中的每一个函数依赖的右部都是单个属性,对f中任一函数依赖x->a,f-都不与f等价,对于f中的任意函数依赖x->a,}u,试写出关系模式r的候选键,并说明理由。
r的候选键是ace
理由:从已知的f,可导出a→abd,再根据增广律,可得出ace→abcde,即ace值可决定全部属性值。
21、 某医院病房计算机管理中需要如下信息:(自己准备答案)
科室:科名,科地址,科**,医生姓名。
病房:病房号,床位号,所属科室名。
医生:姓名,职称,所属科室名,年龄,工作证号。
病人:病历号,姓名,性别,诊断,主管医生,病房号。
其中,一人科室有多个病房,多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
1)请根据上述规则设计此数据库的e-r模型,要求在e-r图中注明属性和联系的类型。
2)将e-r模型转换成关系模型,并指出每个关系模式的主码。
e-r图如下。
2关系模型。
22、 设有系、教师、学生、课程等实体,其中每一个系包括系名、系址、系主任姓名、办公**等属性,教师实体包括工作证号码、教师名、出生日期、党派等属性。学生实体包括学号、姓名、出生日期、性别等属性。课程实体包括课程号、课程名、预修课号等属性。
设一个系可以有多名教师,每个教师教多门课程,一门课程由一个教师教。其中有的教师指导多个研究生。每一个学生可选多门课程,每门课程只有一个预修课程,每一个学生选修一门课程有一个成绩,试根据以上语义完成下述要求。
1)根据上述语义画出e-r图。
2)将e-r模型转换成关系模型,并指出关系的主键和外键。
参***:系(系名、系址、系主任姓名、办公**)
教师(工作证号码、教师名、出生日期、党派,系名)
课程(课程号、课程名、预修课号,工作证号码)
学生(学号、姓名、出生日期、性别)
选课(课程号,学号,成绩)
23、 现有一个未规范化的表,包含了项目、部件和已提供的数量信息。
要求:1)写出基本函数依赖集,并找出候选码。
2)判断最高达到第几范式,并说明理由。
3)如果有必要,将其分解成3nf模式集。
答案:1)fd=,候选码为(项目代号,部件号)。
2)存在部件名属性对候选码的部分函数依赖,因此最高达到1nf。
3)部件(部件号,部件名,现有数量)
项目(项目代号,项目内容,项目负责人)
提供(项目代号,部件号,已提供数量)
24、 假设某商业集团数据库中有一关系模式r如下:(自己准备答案)
r (商店编号,商品编号,数量,部门编号,负责人)
如果规定:1) 每个商店的每种商品只在一个部门销售;
2) 每个商店的每个部门只有一个负责人;
3) 每个商店的每种商品只有一个库存数量。
试回答下列问题:
1) 根据上述规定,写出关系模式r的基本函数依赖;
2) 找出关系模式r的候选码;
3) 试问关系模式r最高已经达到第几范式?为什么?
25、 设有4个关系模式:
**商关系:s(sno,sname,city),属性依次是**商号、**商名称和所在城市;
零件关系:p(pno,pname,color),属性依次是零件号、零件名和颜色;
工程关系:j(jno,jname,city),属性依次是工程号、工程名和所在城市;
**关系:spj(sno,pno,jno,qty),属性依次是**商号、零件号、工程号和数量。
用sql语句实现下列操作:
1)查询s1号**商为j1号工程提供零件的编号和**数量,查询结果按。
零件号降序排列。
2)查询由s1号**商提供红色零件的工程号。
3)查询与其提供零件的**商所在城市为同一城市的工程号。
4)统计每个**商提供的零件总数。
5)查询比j1号工程使用的零件数量多的工程号。
答案:1)selectpno,qtyfromspjwherejno=‘j1’andsno=‘s1’
orderbypnodesc
2)selectjnofrompjoinspjon(
wherecolor=‘红’ andsno=‘s1’
on(4)selectsno,sum(qty)fromspjgroupbysno
5)selectjnofromspjgroupbyjno
h**ingsum(qty)>(selectsum(qty)fromspjwherejno=‘j1’)
26、 已知员工考勤数据库ygkq包含jbqk(职工基本情况)数据表和qqlx(缺勤信息)数据表,表结构如表 1和表2所示:(自己准备答案)
表 1 jbqk(职工基本情况表结构)
表 2 qqlx(缺勤类型信息表结构)
请用sql语句完成以下操作。
数据库原理与应用复习
数据库原理与应用复习资料。第一章数据库的基础知识。1.信息 是一种已被加工为特定形式的数据,这种数据形式对于使用者来说是由意义的,而且对当前和将来的决策具有明显的实际价值。2.数据库的特点 能够被各种用户共享,具有最小的冗余度 redundancy 数据间有密切的联系,并具有较高的对程序的独立性。3...
数据库原理与应用SQL作业
设有如下3个关系模式 雇员employee 雇员号eno,姓名ename,性别esex,年龄eage 部门department 部门号dno,部门名称dname,地点daddress 工作关系works in 雇员号eno,部门号dno 其关系实例如下所示 employee表。department表...
数据库原理复习与答案
1 简述数据库系统的特点。答 数据结构化 数据的共享性高 冗余度低 易扩充 数据独立性高 数据由dbms统一管理和控制。2 数据库管理系统的主要功能有哪些?答 数据定义功能 数据操纵功能 数据库的运行管理 数据库的建立和维护功能。3 试述文件系统与数据库系统的区别和联系。答 1 数据结构化是数据库与...