1.数据的逻辑独立性是指( )。
A.内模式改变,模式不变
B.模式改变,内模式不变
C.模式改变,外模式和应用程序不变
D.内模式改变,外模式和应用程序不变
数据库管理系统在三级模式之间提供的二层映象保证了数据系统中的数据具有较高的逻辑独立性和物理独立性。
在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是 ( D )。
A.外模式 B.内模式 C.存储模式 D.模式
理解:
模式:应用程序能看到的表(对应概念级)
外模式:用户能看到的表(对应用户级),外模式是从模式导出的一个子集
内模式:物理结构和存储结构(对应物理级)
2.设有关系模式EMP(职工号,姓名,年龄,技能)。假设职工号唯一,每个职工有多项技能,则EMP表的主码是( )
A.职工号
B.姓名,技能
C.技能
D.职工号,技能
分析:职工号唯一,但是一个职工有多项技能,主码可以唯一确定一个元组,需要职工号和技能共同唯一确定一个元组
3.在关系代数中,对一个关系做投影操作后,新关系的元组个数( )原来关系的元组个数。
A.小于
B.小于或等于
C.等于
D.大于
分析:投影操作默认会使用distinct消除重复行
B
分析:题干中的“1<2"表示 R的第一个属性值 小于 S的第二个属性值
笛卡尔积:RS(R1,R2,S1,S2,S3)
所以在笛卡尔积中 就是选择R1 < S2的元组,即“1<4"
对于C、D,为自然连接,自然连接的前提是需要有相同的属性,题目中未给出这一条件
5.学校数据库中有学生和宿舍两个关系:
学生(学号,姓名)和 宿舍(楼名,房间号,床位号,学号)
假设有的学生不住宿,床位也可能空闲。如果要列出所有学生住宿和宿舍分配的情况,包括没有住宿的学生和空闲的床位,则应执行( )。
A.全外联接 B.左外联接
C.右外联接 D.自然联接
分析:
(首先外连接会将两个表的字段合并在一起)
1、全外连接:将二者按照所有的记录列出,对应学生表来说,宿舍信息为空,对应宿舍表来说,学生信息为空
2、左外连接:将二者按照学生表的所有记录列出,没有对应学生的宿舍信息为空
3、右外连接:将二者按照宿舍表的所有记录列出,没有住宿的学生信息为空
4、这个就不用讲了
(牛客网)
6.(B )是最小关系系统
分类依据:依据关系系统支持关系模型的程度不同(S:结构、I:完整性、M:数据操纵)
7.关系规范化中的删除异常指的是()
A.不该删除的数据被删除
B.不该插入的数据被插入
C.应该删除的数据未被删除
D.应该插入的数据未被插入
分析:
删除异常:不该删除的被删除
删除失败:该删除的未被删除
插入异常:应该插入的数据未被插入
8.事务是数据库运行的基本单位。如果一个事务执行成功,则全部更新提交;如果一个事务执行失败,则已做过的更新被恢复原状,好像整个事务从未有过这些更新,这样保持了数据库处于( )状态。
A.安全性 B.一致性 C.完整性 D.可靠性
事务必须满足ACID四大特性:原子性、一致性、隔离性、持久性。
原子性(A):事务中包括的所有操作要么都做完,要么都不做。
一致性(C):在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。
隔离性(I):一个事务内部的操作及使用的数据对并发的其他事务是隔离的。
持久性(D):事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。
D
分析:
1、丢失修改
两个事务T1和T2读入同一数据并修改,T2提交的结果破坏了T1提交的结果,导致T1的修改被丢失。
2、不可重复读
事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取结果。
3、读"脏"数据 (出现ROLLBACK)
读"脏"数据是指事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被撤消,这时T1已修改过的数据恢复原值,T2读到的数据就与数据库中的数据不一致,则T2读到的数据就为"脏"数据,即不正确的数据。
产生上述三类数据不一致性的主要原因是并发操作破坏了事务的隔离性。并发控制就是要用正确的方式调度并发操作,使一个用户事务的执行不受其它事务的干扰,从而避免造成数据的不一致性。
10.查询优化的层次一般可分为( )。
A.代数优化、物理优化
B.代数优化、数据优化
C.功能优化、数据优化
D.物理优化、结构优化
查询优化
任务:每个查询都会有许多可供选择的执行策略和操作算法,查询优化就是选择一个高效执行的查询处理策略。按照优化的层次一般可以将查询优化分为
代数优化:是指关系代数表达式的优化,也即按照一定规则,通过对关系代数表达式进行等价变换,改变代数表达式中操作的次序和组合,使查询更高效
物理优化:是指存取路径和底层操作算法的选择。选择依据可以是基于规则的(rule based)、基于代价的(cost based)、基于语义的(semantic based)
11.若事务对数据R已加S锁,则其他事务对数据
A.不能加任何锁
B.可以加S锁也可以加X锁
C.可以加S锁不能加X锁
D.不能加S锁可以加X锁
12. 子模式DDL是用来描述( )。
A.数据库的总体逻辑结构
B.数据库的局部逻辑结构
C.数据库的概念结构
D.数据库的物理存储结构
13.关系数据库规范化是为解决关系数据库中( )问题而引入的。
A.提高查询速度
B.减少数据操作的复杂性
C.保证数据的安全性和完整性
D.插入、删除异常和数据冗余
14.需求分析阶段得到的结果是( )。
A.数据字典描述的数据需求
B.某个DBMS所支持的数据模型
C.包括存储结构和存取方法的物理结构
D. E-R图表示的概念模型
15.关系数据库中的投影操作是指从关系中()。
A.建立相应的图形
B.抽出特定记录
C.建立相应的影像
D.抽出特定字段
16.在关系模式R(A,B,C,D)中有函数依赖F={A→B,B→C},则此关系的码是( )。
A. AC
B. B
C. AD
D. AB
17.
若事务T对数据R已加X锁,则其他事务对数据R( )?
A.可以加S锁不能加X锁
B.不能加S锁可以加X锁
C.可以加S锁也可以加X锁
D.不能加任何锁
S是共享锁,X是排他锁(写锁)
当一个事务对数据加S锁时,其他事务只能对该数据加读锁,而不能加写锁
当一个事务对数据加X锁是,其他请求将不能再为数据加任何锁,直到该锁释放之后,其他事务才能对数据进行加锁。加X锁可以使在修改数据的时候,不允许其他人修改或读取,避免了脏数据和修改丢失的问题
如果对一个事物加了X锁,则不能加任何锁。
如果对一个事物加了S锁,则只能加S锁不能加X锁。
下列的SQL语句中,()不是数据定义语句
A.CREATE TABLE
B.DROP VIEW
C.CREATE VIEW.
D.GRANT
DML数据操纵语句:select、update、insert、delete
DDL数据定义语句:create、alter、drop
DCL数据控制语句:grant、revoke
1NF:属性不可再分
2NF:1NF+消除了非主属性对候选键的部分函数依赖
3NF:2NF+消除了对候选键的传递函数依赖
BCNF:3NF+每一个函数依赖的决定因素都包括主键
函数依赖:
在一个表里面,属性X可以映射到属性Y,也就是说知道了X就能确定Y,称X为决定因素。
完全函数依赖:
(学号,课程号)->成绩
只有同时知道学号和课程号,才能知道成绩
部分函数依赖:
(学号,课程号)->姓名
只需要知道学号 就能知道姓名,课程号是多余了,2NF就是要消除这个多余的“课程号”
传递函数依赖
(学号)-> 班号,(班号)->班主任名
知道了 学号,也就知道了这个学生的班号;同时知道了班号,也就知道了班主任名字。3NF就是要分解表,消除这种传递函数依赖
设某快递公司管理系统中有一个快递员日工作量的关系模式:
R(快递员编号,姓名,电话,快件型号,日期,投递数量,部门编号,部门负责人)
如果规定: 一个快递员只能归属一个部门,每一个部门有一个负责人,每个部门有多名快递员;
快递员每天可投递多种快件,并按不同快件型号统计数量。
(1)根据语义写出关系模式R的基本基本函数依赖和主码。
(2) 关系模式R最高属于第几范式?为什么?
(3)如果R不属于3NF,请将R分解成属于3NF的关系模式。
解:
(1)关系模式R的基本FD有5个:
FD={ 快递员编号->姓名,快递员编号->电话,快递员编号->部门编号,部门编号->部门负责人,(快递员编号, 快件型号,日期) ->投递数量 }
主码: (快递员编号, 快件型号,日期)
(2) R最高属于1NF,因为只满足1NF的属性不可再分性,存在非主属性的部分函数依赖
(3)R分解为:
R1 (快递员编号,姓名,电话,部门编号)
R2 (快递员编号,快件型号,日期,投递数量)
R3 (部门编号,部门负责人)