A
D
D
B
C
C
B
A
C
D
D
D
D
D
A
B
D
D
D
C
关系R
基本表或视图
X<20 或 X>30
域
两段锁协议
冗余
完整性
排它
系统故障
加密
B
C
B
C
A
C
B
B
A
A
C
B
D
分析:职工号唯一,但是一个职工有多项技能,主码可以唯一确定一个元组,需要职工号和技能共同唯一确定一个元组
C
B
A
D
B
A
B
D
超码
外码
可串行化调度
物理
介质故障
模式
转储
并发操作
授权
E-R
B
D
B
C
一般导致数据库中数据不一致的根本原因有三种情况。
第一种情况:数据冗余
假如数据库中两个表都放了用户的地址,在用户的地址发生改变时,如果只更新了一个表的数据,那么两个表就有了不一致的数据。
第二种情况:并发控制不当
假如在飞机票订票系统中,如果两个购票点同时查询某张机票的订购情况,而且分别为订购了这张机票,如果并发控制不当,就会造成同一张机票卖给两个用户的情况。由于系统没有进行并发控制或者并发控制不当,造成数据不一致。
第三中情况:故障和错误
如果软硬件出现故障或者操作错误导致数据丢失或数据损坏,引起数据不一致。因此我们需要提供数据库维护和数据库数据恢复的一些措施。
C
A
关系代数表达式由关系代数操作组合而成。操作中,以笛卡尔积和连接操作最费时 间,并生成大量的中间结果。如果直接按表达式书写的顺序执行,必将花费很多时间,并生 成大量的中间结果,效率较低。
C
A
C
B
B
C
B
B
自然连接是除去重复属性的等值连接。自然连接一定是等值连接,反之不一定。等值连接要求相等的属性分量,但不一定是相同的属性,而自然连接必需是相同的属性。等值连接不把相同的属性去掉,而自然连接去掉。
控制冗余,避免插入异常和删除异常,从而增强数据库结构的稳定性和灵活性。
保护数据库,防止未经授权的,或不合法的使用造成的数据泄露、更改或破坏。
正确性和相容性。
是数据库管理系统的基本单位,是用户定义的一组逻辑一致的程序序列。要么都执行,要么都不执行。
丢失修改,不能重复读和读脏数据。采用封锁机制来进行并发控制 ,避免不一致的情况发生。
能唯一标示元组的属性或属性集合
B
分析:题干中的“1<2"表示 R的第一个属性值 小于 S的第二个属性值
笛卡尔积:RS(R1,R2,S1,S2,S3)
所以在笛卡尔积中 就是选择R1 < S2的元组,即“1<4"
对于C、D,为自然连接,自然连接的前提是需要有相同的属性,题目中未给出这一条件
不部分函数依赖于
概念设计
各个数据文件中存在重复的数据
排它 共享
安全
需求分析 概念结构设计 逻辑结构设计 物理结构设计 数据库实施 数据库运行和维护
丢失修改 不能重复读 读脏数据
关系是一张二维表,每个关系有一个关系名。
描述事物的符号记录
数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合
数据库管理系统是位于用户与操作系统之间的一层数据管理软件
数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成
1、数据定义功能
2、数据组织、存储和管理
3、数据操纵功能
4、数据库的事务管理和运行管理
5、数据库的建立和维护功能
1人工管理阶段
2文件系统阶段
3数据库阶段
1. 数据结构化
2. 数据共享性高、冗余度低、易扩充
3. 数据独立性高
4. 数据由DBMS统一管理和控制
数据的独立性是指逻辑独立性和物理独立性。
数据的逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不变。
数据的物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的,也就是说,数据在磁盘上的数据库中怎样存储是有DBMS管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变了,应用程序不用改变。
1.数据的安全性控制
2.数据的完整性控制
3.并发控制
4.数据恢复
1.数据结构,
2.数据操作,
3.数据的约束条件
实体完整性
参照完整性
用户定义的完整性
1.虚表,是从一个或几个基本表(或视图)导出的表
2.只存放视图的定义,不会出现数据冗余
3.基表中的数据发生变化,从视图中查询出的数据也随之改变
数据库的安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。
1.技术安全类
2.管理安全类
3.政策法律类
1.用户标识和鉴别
2.存取控制
3.视图机制
4.审计
5.数据加密
1.自主存取控制
2.强制存取控制
数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合。
(1)定义功能,即提供定义完整性约束条件的机制;
(2)提供完整性检查的方法,即检查用户发出的操作请求是否违背了完整性约束条件;
(3)违约处理:如果发现用户的操作违背了完整性约束条件,就采取一定的动作来保证数据的完整性。
1. 尽可能少的数据冗余。
2. 没有插入异常。
3. 没有删除异常。
4. 没有更新异常。
数据字典是关于数据库中数据的描述,是元数据,而不是数据本身
1. SQL通信区
2. 主变量
3. 游标
游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。
1. 说明游标
2. 打开游标
3. 移动游标指针,然后取当前记录
4. 关闭游标
1查询分析
2查询检查
3查询优化
4查询执行
事务是由一系列操作序列构成的程序执行单元。这些操作要么都做,要么都不做,是一个不可分割的工作单位。
日志文件是用来记录事务对数据库的更新操作的文件。
1丢失修改
2不可重复读
3读“脏”数据
D
C
A
D
D
C
D
D
C
D
B
D
C
B
D
B
A
C
B
B
B
A
C
D
A
D
D
B
D
C
B
A
C
C
B
实体完整性(实体完整性是对关系中的记录唯一性,也就是主键的约束。准确地说,实体完整性是指关系中的主属性值不能为Null且不能有相同值。定义表中的所有行能唯一的标识,一般用主键,唯一索引 unique关键字,及identity属性比如说我们的身份证号码,可以唯一标识一个人.。)
B
D
D
A
A
C
B
B
C
C
C
D
D
C
A
B
A
C
D
B
C
C
C
B
D
A
A
C
D
A
B
C
C
C
D
D
A
B
C
B
C
D
C
B
A
A
B
B
C
B
B
C
C
D
A
D
D
B
A
C
C
A
C
A
D
A
C
D
A
D
C
B
A
分析:
(首先外连接会将两个表的字段合并在一起)
1、全外连接:将二者按照所有的记录列出,对应学生表来说,宿舍信息为空,对应宿舍表来说,学生信息为空
2、左外连接:将二者按照学生表的所有记录列出,没有对应学生的宿舍信息为空
3、右外连接:将二者按照宿舍表的所有记录列出,没有住宿的学生信息为空
4、这个就不用讲了
D
C
D
A
C
A
C
B
B
D
D
C
B
分析:投影操作默认会使用distinct消除重复行
A
B
D
C
B
C
B
D
A
分析:
删除异常:不该删除的被删除
删除失败:该删除的未被删除
插入异常:应该插入的数据未被插入
D
C
B
事务必须满足ACID四大特性:原子性、一致性、隔离性、持久性。
原子性(A):事务中包括的所有操作要么都做完,要么都不做。
一致性(C):在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。
隔离性(I):一个事务内部的操作及使用的数据对并发的其他事务是隔离的。
持久性(D):事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。
B
A
如果具有排他锁(X 锁),则在释放排他锁(X 锁)之前,其他事务均无法获取该资源的任何类型(共享、更新或排他)的锁。
如果共享锁(S 锁)已应用到资源,则即使第一个事务尚未完成,其他事务也可以获取该项的共享锁或更新锁(U 锁)。
但是,在释放共享锁之前,其他事务无法获取排他锁。
C
A
A
D
C
B
A
B
C
A
B
D
B
A
D
A
B
C
B
C
A
B
A
D
C
A
D
D
C
A
B
B
C
A
B
表式系统:仅支持关系(即表)数据结构,不支持关系操作。
(最小)关系系统:进支持关系数据结构和三种关系操作。
关系完备的系统:这类系统支持关系数据结构和所有关系代数操作(功能上与关系代数等价)
全关系系统:这类系统支持关系模型的所有特征。
A
查询优化
任务:每个查询都会有许多可供选择的执行策略和操作算法,查询优化就是选择一个高效执行的查询处理策略。按照优化的层次一般可以将查询优化分为
代数优化:是指关系代数表达式的优化,也即按照一定规则,通过对关系代数表达式进行等价变换,改变代数表达式中操作的次序和组合,使查询更高效
物理优化:是指存取路径和底层操作算法的选择。选择依据可以是基于规则的(rule based)、基于代价的(cost based)、基于语义的(semantic based)
C
B
D
A
D
C
D
S是共享锁,X是排他锁(写锁)
当一个事务对数据加S锁时,其他事务只能对该数据加读锁,而不能加写锁
当一个事务对数据加X锁是,其他请求将不能再为数据加任何锁,直到该锁释放之后,其他事务才能对数据进行加锁。加X锁可以使在修改数据的时候,不允许其他人修改或读取,避免了脏数据和修改丢失的问题
如果对一个事物加了X锁,则不能加任何锁。
如果对一个事物加了S锁,则只能加S锁不能加X锁。
D
DML数据操纵语句:select、update、insert、delete
DDL数据定义语句:create、alter、drop
DCL数据控制语句:grant、revoke
解:
(1)关系模式R的基本FD有5个:
FD={ 快递员编号->姓名,快递员编号->电话,快递员编号->部门编号,部门编号->部门负责人,(快递员编号, 快件型号,日期) ->投递数量 }
主码: (快递员编号, 快件型号,日期)
(2) R最高属于1NF,因为只满足1NF的属性不可再分性,存在非主属性的部分函数依赖
(3)R分解为:
R1 (快递员编号,姓名,电话,部门编号)
R2 (快递员编号,快件型号,日期,投递数量)
R3 (部门编号,部门负责人)
B
B
C
A
B
D
D
易错项是B
很多情况下对表内部结构不熟悉,想看下我创建的表里面又多少字段名,又想他按照首字母的规律排列,这时候就要用desc +表名了。
A
C
C
D
D
D
C
C
A
C
B
D
A
A
B
D
A
C
D
D