计算机二级选择题知识点之数据库

写在前面:计算机二级选择题涉及数据结构与算法、程序设计基础、数据库设计基础、软件工程基础、计算机系统五大类以及所选科目类所涉及的知识。本文主要包括数据库设计基础部分。

第一章:绪论

数据(data)
数据是描述事物的符号记录。数据是数据库中存储的基本对象。

数据库(DB)
数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度较高的数据独立性易扩展性,并可为各种用户共享

数据库管理系统(DBMS)
数据库管理系统是位于用户与操作系统之间的一层数据管理软件。数据库管理系统和操作系统一样是计算机的基础软件,也是一个大型复杂的软件系统。它的主要功能包括:数据定义功能、数据的组织、存储和管理、数据操纵功能、数据库的事务管理和运行管理、数据库的建立和维护功能

数据库系统(DBS)
数据库系统是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。

数据模型可分为两大类:
第一类是概念模型,第二类是逻辑模型和物理模型。

概念模型

概念模型,也称为信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。

逻辑模型

逻辑模型主要包括层次模型、网状模型、关系模型、面向对象数据模型和对象关系数据模型、半结构化数据模型等。它是按计算机系统的观点对数据建模,主要用于数据库管理系统的实现。

实体
客观存在并可相互区别的事物称为实体。

属性
实体所具有的某一特性称为属性。


唯一标识实体的属性集称为码。

实体型
用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。

实体集
同一类型实体的集合称为实体集。

联系
实体之间的联系通常是指不同实体集之间的联系。实体之间的联系后有一对一、一对多和多对多。

数据模型的组成要素
数据模型通常由数据结构、数据操作和数据的完整性约束条件三部分组成。

数据结构
数据结构描述数据库的组成对象以及对象之间的联系。

数据操作
数据操作是指数据库中各种对象(型)和实例(值)允许执行的操作的集合,包括操作及有关的操作规则。

数据的完整性约束条件
数据的完整性约束条件是一组完整性规则。完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用于限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效和相容。

数据库领域中主要的逻辑数据模型
层次模型、网状模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型

关系模型的数据结构
关系:一个关系对应通常所说的一张表
元组:表中的一行即为一个元组
属性:表中的一列即为一个属性
码:也称为码键,表中的可以唯一确定一个元组的属性组
域:一组具有相同数据类型的值的集合。
分量:元组中的一个属性值
关系模式:对关系的描述,一般表示为关系名(属性1,属性2…,属性n)

数据库系统的三级模式结构
数据库的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。

模式
模式也称为逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
一个数据库只能有一个模式。

外模式
外模式也称为子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑组成。一个数据库可以有多个外模式。一个外模式可以被应用于多个应用。一个应用只能使用一个外模式。

内模式
内模式也称为存储模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。一个数据库只有一个内模式。

数据库的两级映像功能与数据独立性
外模式/模式映像
当模式改变时,由数据库管理员对各个外模式/模式的映像作相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而使应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
模式/内模式映像
当数据库的存储结构作相应改变,可以使模式保持不变,从而使应用程序也不必改变。保证了数据与程序的物理独立性,简称数据的物理独立性。

第二章:关系数据库


域是一组具有相同数据类型的值的集合

笛卡尔积
笛卡尔积表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。
例如:假设集合A={w,q},集合B={0,1,2},则两个集合的笛卡尔积为{(w,0),(w,1),(w,2),(q,0),(q,1), (q,2)}。

关系操作
关系模型中常用的关系操作包括查询操作和插入、删除、修改两大部分。

查询操作
查询操作又可分为选择、投影、连接、除、并、差、交、笛卡尔积。其中的选择、投影、并、差、笛卡尔积是5种基本操作。

关系的完整性
关系模型中有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。其中实体完整性和参照完整性是关系模型中必须满足的完整性约束条件,被称作是关系的两个不变性,应该由关系系统自动支持。

实体完整性规则
若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值(null value)。所谓空值就是“不知道”或“不存在”或“无意义”的值。

参照完整性的定义
设F是基本关系R的一个或一组属性,但不是关系R的码,Ks是基本关系S的主码。如果F与Ks相对应,则称F是R的外码(foreign key),并称基本关系R为参照关系,基本关系S为被参照关系或目标关系。

参照完整性规则
若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中的每个元组在F上的值必须:或者取空值(F的每个属性值均为空值)或者等于S中的某个元组的主码值。

关系代数运算符
关系代数运算符可分为:传统的集合运算符和专门的关系运算符。

集合运算符
并∪、交∩、差-、笛卡尔积×。
题目常考两张表进行什么操作后得到了第三张表

专门的关系运算符
选择δ、投影π、连接、除÷。
题目常考两张表进行什么操作后得到了第三张表

第三章:关系数据库标准语言SQL

聚集函数

名称作用
COUNT(*)统计元组个数
COUNT([DISTINCT|ALL]<列名>)统计一列中值的个数
SUM([DISTINCT|ALL]<列名>)计算一列值的总和
AVG([DISTINCT|ALL]<列名>)计算一列值的平均值
MAX([DISTINCT|ALL]<列名>)求一列值中的最大值
MIN([DISTINCT|ALL]<列名>)求一列值中的最小值

视图
视图是从一个或几个基本表(或视图)导出的表。它与基本表不同,是一个虚表。数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。

建立视图的一般格式

create view<视图名>[(<列名>[,<列名>])...]
As<子查询>
[WITH CHECK OPTION];

视图的作用
1.视图能够简化用户的操作。

2.视图使用用户能以多种角度看待同一数据。

3.视图对重构数据库提供了一定程度的逻辑独立性。

4.视图能够对机密数据提供安全保护。

5.适当利用视图可以更清晰地表达查询。

第5章:数据库完整性

数据库的完整性
数据库的完整性是指数据的正确性和相容性。

数据的正确性
数据报的正确性是指数据是符合现实世界语义、反映当前实际状况的。

数据的相容性
数据的相容性是指数据库同一对象在不同关系表中的数据是符合逻辑的。

数据的完整性和安全性
数据的完整性和安全性是两个既有联系又不尽相同的概念。数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据。数据的安全性是保护数据库防止恶意破坏和非法存取。因此,安全性检查和控制的防范对象是不合语义的、不正确的数据,防止它们进入数据库。安全性控制的防范对象是非法用户和非法操作,防止他们对数据库数据的非法存取。

实体完整性规则
若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值(null value)。所谓空值就是“不知道”或“不存在”或“无意义”的值。

参照完整性的定义
设F是基本关系R的一个或一组属性,但不是关系R的码,Ks是基本关系S的主码。如果F与Ks相对应,则称F是R的外码(foreign key),并称基本关系R为参照关系,基本关系S为被参照关系或目标关系。

参照完整性规则
若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中的每个元组在F上的值必须:或者取空值(F的每个属性值均为空值)或者等于S中的某个元组的主码值。

触发器
触发器(trigger)是用户定义在关系表上的一类由事件驱动的特殊过程。

第6章:关系数据理论

规范化小结:
1NF:每个分量不可再分。
2NF:在1NF的基础上,不存在非主属性对码的部分函数依赖。
3NF:在2NF的基础上,不存在非主属性对码的传递函数依赖。
BCNF:在3NF的基础上,不存在主属性对码的部分或传递函数依赖。
4NF:4NF就是限制关系模式的属性之间不允许有非平凡且非函数依赖的多值依赖。

没有非主属性一定是3NF,全码一定是3NF,BCNF

第7章:数据库设计

数据库设计的6个阶段

需求分析
进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。需求分析是整个设计过程的基础,是最困难和最耗费时间的一步。作为“地基”的需求分析是否做得充分与准确,决定了在其上构建数据库“大厦”的速度与质量。需求分析做得不好,可能会导致整个数据库设计返工重做。

概念结构设计
概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体数据库管理系统的概念模型。

逻辑结构设计
逻辑结构设计是将概念设计转换为某个数据库管理系统所支持的数据模型。

物理结构设计
物理结构设计是为逻辑结构设计选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。

数据库实施
在数据库实施阶段,设计人员运用数据库管理系统提供的数据库语言及其宿主语言,根据逻辑结构设计和物理设计的结果建立数据库,编写和调试应用程序,组织数据库入库,并进行试运行。

数据库运行和维护
数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评估、调整与修改。

概念结构设计中两个实体之间的联系

一对一联系(1:1)

一对多联系(1:n)

多对多联系(m:n)

逻辑结构设计中E-R图向关系模型的转换规则

1.实体型
实体属性→关系属性
实体的码→关系的码

2.联系
①一对一联系(1:1)
合并:
一端实体的码加入另一端
一端实体的码+联系属性+另一端的属性→关系属性
任一实体的码→关系的码
独立:
两端实体的码+联系属性→关系属性
任一实体的码→关系的码

②一对多联系(1:n)
合并:
把1端实体的码往n端里合
n端属性+1端实体的码+联系属性→关系属性
n端的码→关系的码
独立:
两端实体的码+联系属性→关系属性
n端的码→关系的码

③多对多联系(m:n)
只能转换为独立
两端实体的码+联系属性→关系属性
两端实体的码→关系的码

第10章:数据库恢复技术

​事务
事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。例如:在关系数据库中,一个事务可以是一条SQL语句、一组SQL一句或整个程序。

定义事务的语句
BEGIN TRANSACTION(begin transaction);
开始
COMMIT(commit);
提交
ROLLBACK(rollback);
回滚

事务的四个特性(事务的ACID特性)
​原子性、一致性、隔离性和持续性。

故障的种类
1.事务内部的故障
2.系统故障(软故障)
是指造成系统停止运转的任何事件,使得系统要重新启动。例如:特定类型的硬件错误(CPU故障)、操作系统故障、DBMS代码故障、系统断电等。
这类故障影响正在运行的所有事务,但不破坏数据库。此时主存内容,尤其是数据库缓冲区中的内容都被丢失,所有运行事务都非正常终止。发生系统故障时,一些尚未完成的事务的结果可能已被送入物理数据库,从而造成数据库可能处于不正确的状态,为保证数据一致性,需要清除这些事务对数据库的修改。
3.介质故障(硬故障)
硬故障指外存故障,如磁盘损坏、磁头碰撞、瞬时强磁场干扰等。这类故障将破坏数据库或部分数据并影响正在存取这部分数据的所有事务。
4.计算机病毒

恢复机制涉及的两个关键问题
是如何建立冗余数据以及如何利用这些冗余数据实施数据库恢复。

建立冗余数据最常用的技术
是数据转储和登记日志文件。

第11章:并发控制

​事务可以一个一个串行执行,即每个时刻只有一个事务运行。

在单处理机系统中事务的并发执行实际上是这些并行事务的并行操作轮流交叉运行。

在多处理机系统中,每个处理机可以运行一个事务,多个处理器可以同时运行多个事务,实现多个事务真正的并行运行,这种并行执行方式称为同时并发方式。

并发操作带来的数据不一致性
包括丢失修改、不可重复读和读“脏”数据。

封锁
​封锁是实现并发控制的一个非常重要的技术。
排他锁(写锁,X锁)
共享锁(读锁,S锁)
​Y=Yes,相容的请求
N=No,不相容的请求

封锁协议
1.一级封锁协议
​一级封锁协议是指,事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。一级封锁协议可以丢失修改,并保证事务T是可恢复的。在一级封锁协议中,如果仅仅是读数据而不对其进行修改,是不需要加锁的,所以它不能保证可重复读和不读“脏”数据。
2.二级封锁协议
​二级封锁协议是指,在一级封锁协议基础上增加事务T在读取数据R之前必须先对其加S锁,读​完后即可释放S锁。二级封锁协议除了可以防​止丢失修改还可以进一步防止读“脏”数据。在二级封锁协议中,由于读完数据后即可释放S锁,所以它不能保证可重复读。

3.三级封锁协议
​三级封锁协议是指,在一级封锁协议基础上增加事务T在读取数据R之前必须先对其加S锁,直到事务结束时才释放。三级封锁协议除了可以防​止丢失修改和读“脏”数据,还可以进一步防止不可重复读。

  • 8
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值