数据库系统概论基本知识点Word文档格式.docx
《数据库系统概论基本知识点Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库系统概论基本知识点Word文档格式.docx(7页珍藏版)》请在冰点文库上搜索。
⑴定义基本表:
CREATETABLE表名(列名1数据类型[列级完整性约束条件]
[,列名2数据类型[列级完整性约束条件]]
[,表级完整性约束条件]);
⑵删除表:
DROPTABLE表名<
CASCADE(级联)|RESTRICT(限制)>
;
⑶修改基本表:
ALTERTABLE<
表名>
[ADD<
新列名>
<
数据类型>
[完整性约束]]
[DROP<
完整性约束名>
]
[ALTERCOLUMN<
列名>
<
完整性约束>
];
⑷数据查询:
SELECT[ALL|DIATINC]<
目标列表达式>
[, <
]…
FROM<
表名或视图名>
[ , <
[WHERE<
条件表达式>
[IN(其他表的条件表达式)]]
/*将结果按<
列名1>
的值进行分组,满足<
的输出
[ORDERBY<
列名2>
[ASE|DESC]]/*将结果按<
的值进行升序或降序
排序;
第四章
1、什么是计算机安全,有哪些问题类型(P130~131)
⑴计算机系统的安全性,是指计算机系统建立和采取各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止因偶然或恶意的原因使系统遭到破坏,数据遭更改或泄漏等
⑵计算机系统的三类安全性问题:
①技术安全:
是指计算机系统采用一定安全性的硬件、软件来实现对计算机系统及其所存数据的安全保护
②管理安全:
是指由于管理不善导致的计算机设备和数据介质的物理破坏、丢失等软硬件意外故障以及场地的意外事故等安全问题。
③政策法律:
则指政府部门建立的有关计算机犯罪、数据安全保密的法律道德准则和
政策法规、法令。
2、SQL语言如何实现存取控制P136
存取控制机制主要包括两部分:
①定义用户权限,并将用户权限登记到数据字典中
②合法权限检查
自主存取控制(DAC)与强制存取控制(MAC)的区别:
P136
DAC:
在DAC方法中,用于对于不同对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可以将其拥有的存取权限转手给其他用户。
因此自主存取控制非常灵活。
MAC:
在MAC方法中,每一个数据库被标以一定的密级,每一个用户也被授予某一个级别的许可证。
对任意一个对象,只有具有合法许可证的用户才可以存取。
强制存取控制因此相对比较严格。
1、数据库的三类完整性规则(P49~52.P152~157)
实体完整性:
[规则]若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值。
参照完整性:
[规则]若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码
KS相对应(基本关系R与S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
●或者取空值(F的每个属性值均为空值);
●或者等于S中某个元组的主码值。
用户定义的完整性:
概念:
针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足语义要求。
实体完整性和参照完整性是关系模型必须满足的完整性约束条件,也被称作是关系的两个不变形,应该由关系系统自动支持。
用户定义的完整性是应用领域需要遵循的约束条件,体现了具体领域中的语义约束。
2、违反参照完整性的处理方法(P154~156)
被参照表S
参照表R
违约处理
可能破坏参照完整性
←
删除元组
拒绝
修改主码值
→
/级连修改/设置为空值
修改主码值 → 可能破坏参照完整性 拒绝/级连修改/设置为空值
拒绝(NOACTION)执行:
不允许该操作执行。
该策略一般设置为默认策略。
级连(CASCADE)操作:
当删除或修改被参照表S的一个元组造成了与参照表R的不一致,则删除或修改参照表中的所有造成不一致的元组。
设置为空值:
当除或修改参照表中的一个元组时造成了不一致,则删除或修改参照表中的所有造成不一致的元组的对应属性设置为空值。
第六章
1、什么叫规范化?
(P174)
一个低一级范式的关系模式,通过模式分解可以转化为若干个高一级的关系模式的集合,这种过程就叫规范化。
2、什么是决定因素主属性?
包含在任何一个候选码中的属性,称为主属性。
3、会判断范式级别(P174~)
1NF 2NF3NFBCNF
第七章
1、数据字典的内容
数据字典通常包括数据项、数据结构、数据流、数据储存和处理过程5个部分。
数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。
2、数据库设计的过程,需求分析的具体步骤(P207)
①需求分析、 ②概念结构设计、 ③逻辑结构设计、
④物理结构设计、⑤数据库实施、 ⑥数据库运行和维护
需求分析的具体步骤:
调查组织机构总体情况、熟悉业务活动、明确用户需求、确定系统边界
3、概念设计阶段的成果是什么?
P209
将需求分析得到的用户需求抽象为信息结构即概念模型的过程
4、同一个表上的多个触发器激活时,遵循的顺序(P163)
①执行该表上的BEFORE触发器;
②激活触发器的SQL语句;
③执行该表上的AFTER触发器。
5、会设计数据库,会画E—R图,会判断关键字第十一章
1、事务的概念(P278)
事务是一系列的数据库操作,是数据库用用程序的基本逻辑单元。
事务的特性:
原子性、一致性、隔离性和持续性。
原子性:
事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。
一致性:
事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。
隔离性:
一个事务的执行不能被其他事务干扰。
即一个事务内部的操作及使用的数据对其
他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。
持续性:
持续性也称永久性(Perfnanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。
接下来的其他操作或故障不应该对其执行结果有任何影响。
2、数据库恢复机制,冗余常用的技术(P282)
数据转储和登录日志文件是数据库恢复的基本技术。
3、DBMS对并发操作进行正确调度的主要目的(P293)
为了保证事务的隔离性和一致性,DBMS对并发操作进行正确调度。
4、解决死锁问题主要两类方法(P298~299)
死锁的检测一般有两种方法:
超时法、事务等待图法。
死锁的处理:
DBMS选择一个处理死锁代价最小的事务,将其撤销,释放此事务持有的所有锁,使其他事务得以继续运行下去。
当然,对其撤销的事务所执行的数据修改操作必须加以恢复。
5、什么是封锁,多粒度封锁?
P295P303
封锁就是事务T在对某个数据对象例如表、记录等操作之前,先向系统发出请求,对其加锁。
加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其他的事务不能更新此数据对象。
封锁是实现并发控制的一个非常重要的技术。
基本的封锁类型有两种:
排它锁(x锁,写锁)和共享锁(S锁,读锁)。
多粒度封锁:
在一个系统中同时支持多种封锁粒度供不同的事务选择是比较理想的,这种封锁方法称为多粒度封锁。
6、两段锁协议的内容
所谓两段锁协议是指所有事务必须分两个阶段对数据项加锁和解锁。
●在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁;
●在释放一个封锁之后,事务不再申请和获得对该数据的封锁。
数据库系统概论知识点
(二)
第一章
1、什么是逻辑独立性,物理独立性?
2、什么是候选码?
P174
若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码简单的情况:
候选码只包含一个属性。
3、什么是参照完整性?
[规则]若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码KS相对应(基本关系R与S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
4、数据库系统的特点:
①数据结构化、 ②数据共享性高、冗余度低,易扩充
③数据独立性高 ④数据由DBMS统一管理和控制第二章
1、什么是数据结构,关系模型的数据结构是什么?
P14
数据结构是所描述的对象类型的集合,是对系统静态特性的描述。
描述的内容:
与数据类型、内容、性质有关的对象
与数据之间联系有关的对象
层次结构、网状结构和关系结构的数据模型分别命名为层次模型、网状模型和关系模型。
2、笛卡尔积运算的过程(结果有多少行多少列)?
详见书P43
运算符
含义
3、关系代数运算符的几种类型?
∪
并
"
较
>
≥
大于
大于等于
—
差
小于
集合运算符 ∩
X
交
笛卡尔积
≤
=
小于等于
等于
不等于
专门的
σ
选择
┐
非
关系
∏
投影
逻辑
∧
与
连接
∨
或
÷
除
1、查询通配符有哪几个,分别代表什么?
●%(百分号)代表任意长度(长度可以为0)的字符串。
●_(下划线)代表任意单个字符
2、什么是相关子查询?
P106
如果子查询的查询条件依赖于父查询,这类子查询称为相关子查询。
3、创建索引的目的,在SQL语言中可创建索引的种类P90
创建索引的目的:
建立索引是为了减少查询操作的时间。
SQL语言中索引的种类:
聚簇索引
4、会写增删改,查询,建立视图的语句P118
视图是从一个或几个基本表(或视图)到处的表。
它与基本表不同,是一个虚表。
数据库只存放视图的定义,而不存放视图对应的数据,这些数据仍在基本表中。
第四章
1、什么是MAC
所谓MAC是指系统为保证更高程序的安全性,按照TDI/TCSEC标准中安全策略的要求,所采取的强制存取检查手段。
它不是用户能直接感知或进行控制的。
MAC适用于那些对数据有严格而固定密级分类的部门,例如军事部门或政府部门。
第五章
1、什么是违约处理
DBMS若发现用户的操作违背了完整性约束条件,就采取一定的动作,如拒绝
(NOACTION)执行该操作,或级连(CASCADE)执行其他操作,进行违约处理以保证数据的完整性。
2、数据库的三类完整性(152~157)
(1) .实体完整性:
〖规则〗若属性(指一个或一组属性)A是基本关系R的主属性,则A
不能取空值。
〖定义〗列级:
列名数据类型PRIMARYKEY||表级:
PRIMARYKEY(列
名1,列名2)
(2).参照完整性:
〖概念〗F是关系R的属性而非码,Ks是关系S的主码。
若F与Ks相对应,则称F是R的外码。
〖规则〗若属性(属性或组)F是基本关系R的外码,它与基本关系S
的主码Ks相对应(基本关系R基本关系S不一定是不同的关系),则对于R中每个元组在
F上的值必须为:
或者取空值(F的每个属性均为空值);
或者等于S中某个元组的主码值。
〖定义〗表级:
FOREIGNKEY(Ks)REFERENCESR(F)
(3).用户定义的完整性:
〖概念〗针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足语言要求。
〖定义〗:
列值非空/列值唯一/检查列值是否满足一个布尔表达式:
列表数据类型NOTNULL/UNIQUE/CHECK(该列表表达式)
1、会判断范式的级别第七章
1、需求分析中调查工作的重点
2、什么是数据库设计,数据库设计的过程
数据库设计,是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据处理要求。
数据库设计的过程:
3、掌握ER图三要素,会设计数据库,会画ER图,会判断关键字
4、概念模型设计阶段,视图集成的两个步骤?
(l)合并分E—R图,生成初步E—R图
(2)消除不必要的冗余,设计基本E—R图
第十、十一章
1、数据转储的种类?
P282
数据转储可分为静态转储和动态转储。
静态转储:
在系统中无运行事务时进行的转储操作。
静态转储简单,但必须等
待正运行的用户事务结束才能进行。
同样,新的事务必须等待转储结束才能执行。
显然,这
会降低数据库的可用性。
动态转储:
指转储期间允许对数据库进行存取或修改。
动态转储可克服静态转储的缺点,它不用等待正在运行的用户事务结束,也不会影响新事务的运行。
但是,转储结束时后援副本上的数据并不能保证正确有效。
因为转储期间运行的事务可能修改了某些数据,使得后援副
本上的数据不是数据库的一致版本。
为此,必须把转储期间各事务对数据库的修改活动登记下来,建立日志文件。
这样,后援副本加上日志文件就能得到数据库某一时刻的正确状态。
转储还可以分为海量转储和增量转储两种方式。
海量转储是指每次转储全部数据库。
增量转储则指每次只转储上一次转储后更新过的数据。
从恢复角度看,使用海量转储得到的后备副本进行恢复一般说来更简单些。
但如果数据库很大,事务处理又十分频繁,则增量转储方式更实用更有效。
数据转储有两种方式,分别可以在两种状态下进行,因此数据转储方法可以分为四类:
动态海量转储、动态增量转储、静态海量转储和静态增量转储。
2、系统故障的恢复中,哪种业务需要UNDO、那种需要REDO?
P285~286
对撤销队列中的各个事务进行撤销(UNDO)处理。
进行UNDO处理的方法是,反向扫描日志文件,对每个UNDO事务的更新操作执行逆操作
对重做队列中的各个事务进行重做(REDO)处理。
进行REDO处理的方法是,正向扫描日志文件,对每个REDO事务重新执行日志文件登记的操作。
即将日志记录中“更新后的值”写入数据库。
3、什么是可串行化调度?
P299
多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的结果相同,称这种调度策略为可串行化的调度。
4、什么是封锁,封锁的类型有哪些?
5、封锁协议的内容