《数据库知识点总结.pdf》由会员分享,可在线阅读,更多相关《数据库知识点总结.pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、期末复习顺便总结下,书本为高等教育出版社的数据库系统概论。第一章知识点第一章知识点数据库是长期储存之电脑内的、有组织的、可共享的大量数据的集合。1,数据库数据特点 P4永久存储,有组织,可共享永久存储,有组织,可共享。2,数据独立性及其如何保证 P10,P34逻辑独立性逻辑独立性:用户的应用程序与数据库的逻辑结构互相独立。内模式内模式保证物理独立性物理独立性:用户的应用程序与存储在磁盘上的数据库中的数据相互外模式外模式保证3,数据模型的组成要素 P13数据结构、数据操作、完整性约束数据结构、数据操作、完整性约束。4,用 ER 图来表示概念模型 P17实体、联系和属性实体、联系和属性。联系本身也
2、是一种实体型,也可以有属性。第二章第二章1,关系的相关概念如关系、候选码、主属性、非主属性 P42-P44单一的数据结构-关系关系。现实世界的实体以及实体间的各种联系均用关系来表示。域域是一组具有相同数据类型的值的集合。假设关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码候选码关系模式的所有属性组是这个关系模式的候选码,称为全码全码假设一个关系有多个候选码,则选定其中一个为主码主码候选码的诸属性称为主属性主属性不包含在任何侯选码中的属性称为非主属性非主属性2 关系代数运算符P52自然连接是在广义笛卡尔积 RS 中选出同名属性上符合相等条件元组,再进行投影,去掉重复的同名属性,组
3、成新的关系。给定关系 r(R) 和 s(S), S R,则 r s 是最大的关系 t(R-S) 满足 t x s r3,关系代数表达式第三章操 作 对 象操作方式创建删除修改模式CREATE SCHEMADROP SCHEMAALTER TABLE表CREATE TABLEDROP TABLE视图CREATE VIEWDROP VIEW索引CREATE INDEXDROP INDEX1,SQL 的特点 P79-P801.1. 综合统一综合统一2.2. 高度非过程化高度非过程化3.3. 面向集合的操作方式面向集合的操作方式5.5. 语言简洁,易学易用语言简洁,易学易用2,基本表的定义、删除和修改
4、P84-P87PRIMARY KEYPRIMARY KEYPRIMARY KEYPRIMARY KEY (Sno,Cno)UNIQUEUNIQUEFOREIGN KEYFOREIGN KEY (Cpno) REFERENCESREFERENCES Course(Cno)ALTER TABLEALTER TABLE ADDADD 完整性约束 DROPDROP ALTER COLUMNALTER COLUMN ;DROP TABLEDROP TABLE RESTRICT| CASCADERESTRICT| CASCADE;3,索引的建立与删除P89-P90CREATE UNIQUE CLUSTER
5、 INDEXCREATE UNIQUE CLUSTER INDEX ONON (, );唯一索引 UNIQUEUNIQUE、非唯一索引或聚簇索引CLUSTERCLUSTERDROP INDEXDROP INDEX ;4,数据查询 P91-P114唯一 DISTINCTDISTINCT确定范围 BETWEEN ANDBETWEEN AND,NOT BETWEEN ANDNOT BETWEEN AND确定集合 ININ,NOT INNOT IN字符匹配 LIKELIKE,NOT LIKENOT LIKE空值 IS NULL IS NULL,IS NOT NULLIS NOT NULL多重条件逻辑运
6、算 ANDAND,OROR,NOTNOTORDER BYORDER BY 子句 升序:ASCASC;降序:DESCDESC;缺省值为升序缺省值为升序聚集函数:计数COUNTCOUNTDISTINCT|ALL *COUNTCOUNTDISTINCT|ALL 计算总和SUMSUMDISTINCT|ALL 计算平均值AVGAVGDISTINCT|ALL 最大最小值MAXMAXDISTINCT|ALL MINMINDISTINCT|ALL GROUP BY 子句分组 & HAVING 短语左外连接 LEFT OUT JOINLEFT OUT JOIN XXX ONON (XX.A = XXX.A)5,
7、数据更新 P115-P118INSERTINSERTINTOINTO (,)VALUESVALUES ( ,)/或子查询UPDATEUPDATE SETSET =,= WHEREWHERE ;DELETEDELETE FROMFROM WHEREWHERE ;6,视图的 P118-126CREATECREATE VIEW VIEW ( ,)ASAS -子查询不允许含有 ORDER BY 子句和 DISTINCT 短语 WITHWITH CHECK CHECK OPTION OPTION; DROPDROP VIEW VIEW ;第四章、第五章第四章、第五章1,授权与回收 P137-P140GR
8、ANTGRANT 语句的一般格式: GRANT ,. - ALL PRIVILIGES ON TO ,. -PUBLIC WITH GRANT OPTION;-允许他再将此权限授予其他用户REVOKEREVOKE 语句的一般格式为:REVOKE ,. ON FROM ,.; -级联CASCADE收回2,数据库角色 P142-P143角色是权限的集合一、角色的创建角色的创建CREATE ROLE 二、给角色授权给角色授权 GRANT , ON 对象名 TO ,三、将一个角色授予其他的角色或用户将一个角色授予其他的角色或用户GRANT ,TO , WITH ADMINOPTION四、角色权限的收回
9、角色权限的收回REVOKE ,ON FROM ,3,数据库的三类完整性及其实现 P152-P158实体完整性实体完整性 CREATE TABLE 中用 PRIMARY KEY 定义参照完整性参照完整性在 CREATE TABLE 中用 FOREIGN KEY 短语定义哪些列为外码用 REFERENCES 短语指明这些外码参照哪些表的主码用户定义的完整性用户定义的完整性 CREATE TABLE 时定义列值非空NOT NULL列值唯一UNIQUE检查列值是否满足一个布尔表达式CHECKCONSTRAINT 约束 CONSTRAINT PRIMARY KEY 短语 |FOREIGN KEY 短语
10、|CHECK 短语使用 ALTER TABLE 语句修改表中的完整性限制可以先删除原来的约束条件,再增加新的约束条件ALTER TABLE StudentDROP CONSTRAINT C1;ALTER TABLE StudentADD CONSTRAINT C1 CHECK (Sno BETWEEN 900000 AND 999999)第六章第六章关系模式 是一个五元组: R(U, D, DOM, F)1,函数依赖和码的定义P172-P174数据依赖:一个关系内部属性与属性之间的约束关系。最重要的数据依赖:函数依赖和多值依赖函数依赖函数依赖:一个属性或一组属性的值可以决定其它属性的值。函数依
11、赖:平凡函数依赖与非平凡函数依赖平凡函数依赖与非平凡函数依赖在关系模式 R(U)中,对于 U 的子集 X 和 Y,如果如果 X XY Y,但,但 Y Y 不属于不属于 X X,则称,则称 X XY Y 是非平凡的函数依赖是非平凡的函数依赖假设假设 X XY Y,但,但 Y Y 属于属于 X,X,则称则称 X XY Y 是平凡的函数依赖是平凡的函数依赖在 R(U)中,如果 XY,并且对于 X 的任何一个真子集 X ,都有 X数依赖数依赖,记作:XY 。Y。Y,则称 Y 对 X 完全函完全函假设 XY,但 Y 不完全函数依赖于 X,则称 Y 对 X 部分函数依赖部分函数依赖,记作 X在 R(U)中
12、,如果 XY,(YX),YX,YZ,则称 Z 对 X 传递函数依赖传递函数依赖。 加上条件 YX,是, 是直接函数依赖直接函数依赖而不是传递函数依赖。因为如果 YX,则 XY,实际上是2,1NF,2NF,3NF P175-P176如果一个关系模式 R 的所有属性都是不可分不可分的基本数据项,则 R1NF1NF第一范式是对关系模式的最起码的要求假设 R1NF,且每一个非主属性完全函数依赖于码非主属性完全函数依赖于码,则 R2NF2NF。每一个非主属性既不部分依赖于码也不传递依赖于码不传递依赖于码,则 R3NF3NF3,函数依赖公理系统Armstrong 公理系统 P183,闭包 P184,最小覆
13、盖 P186)Armstrong 公理系统 A1.自反律自反律Reflexivity:假设 Y 属于 XU,则 X Y 为 F 所蕴含。属于 A2.增广律增广律Augmentation:假设 XY 为 F 所蕴含,且 Z 属于 U,则 XZYZ 为F 所蕴含。 A3.传递律传递律Transitivity:假设 XY 及 YZ 为 F 所蕴含,则 XZ 为 F 所蕴含。导出规则:合并规则:由 XY,XZ,有 XYZ。A2, A3伪传递规则:由 XY,WYZ,有 XWZ。A2, A3分解规则:由 XY 及 Z 属于 Y,有 XZ。A1, A3在关系模式 R中为 F 所逻辑蕴含的函数依赖的全体叫作
14、F 的闭包闭包,记为 F+。设 F 为属性集 U 上的一组函数依赖,X 属于 U, XF+ = A|XA 能由 F 根据 Armstrong公理导出,XF+称为属性集 X 关于函数依赖集 F 的闭包F+ = G+ 的充分必要条件是 F 属于 G+ ,和 G 属于 F+最小依赖集最小依赖集(1) F 中任一函数依赖的右部仅含有一个属性。(2) F 中不存在这样的函数依赖XA,使得 F 与 F-XA等价。(3) F 中不存在这样的函数依赖XA, X 有真子集 Z 使得 F-XAZA与 F 等价。4,模式分解模式分解的准则及定义P189-P190,模式分解方法 P191)模式的分解要保持无损联接性和
15、函数依赖性无损联接性和函数依赖性。算法见教材.第七章第七章1,数据库设计的基本步骤P201需求分析需求分析运行和维护运行和维护2,概念结构设计的方法和步骤P209-P211设计概念结构的 4 类方法自顶向下自顶向下 首先定义全局概念结构的框架,然后逐步细化自底向上自底向上 首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构逐步扩张逐步扩张 首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构混合策略混合策略 将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。3,E
16、-R 图向关系模型的转换 P224-P225属性不能再具有需要描述的性质。属性不能与其他实体具有联系。这种转换一般遵循如下原则转换一般遵循如下原则: 一个实体型转换为一个关系模式。 一个 m:n 联系转换为一个关系模式。 一个 1:n 联系可以转换为一个独立的关系模式,也可以与n 端对应的关系模式合并。 一个 1:1 联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。 三个或三个以上实体间的一个多元联系转换为一个关系模式。 同一实体集的实体间的联系,即自联系,也可按上述1:1、1:n 和 m:n 三种情况分别处理。概念结构设计概念结构设计逻辑结构设计逻辑结构设计物理结构设计
17、物理结构设计数据库实施数据库实施数据库数据库 具有相同码的关系模式可合并。4,物理设计关系模式存取方法的选择P228-P230,数据库的存取结构 P230-P231)常用存取方法1、索引方法索引方法 B+树索引方法查询条件,聚集函数,连接操作2、聚簇聚簇ClusterCluster方法方法连接操作,相等比较,重复率高3、HASHHASH 方法方法大小可预知,DBMS 提供动态存取方法确定数据库的物理结构 确定数据的存储结构 设计数据的存取路径 确定数据的存放位置确定数据的存放位置存取时间存取时间 存储存储空间利用率空间利用率 维护代价维护代价 确定系统配置确定系统配置第十一章第十一章事务(Tr
18、ansaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位;事务是恢复和并发控制的基本单位;1,事务的特性 P279事务的 ACIDACID 特性:原子性原子性AtomicityAtomicity一致性一致性ConsistencyConsistency隔离性隔离性IsolationIsolation持续性持续性DurabilityDurability 2,并发控制不当导致的问题P294 1丧失修改丧失修改Lost Update 2读“脏数据”读“脏数据” dirty read 3不可重复读不可重复读Non-repeatable Read3,封锁
19、P295-296封锁具有 3 个环节:第一个环节是申请加锁申请加锁;第二个环节是获得锁获得锁; 第三个环节是释放锁释放锁。基本的封锁类型有两种:排它锁排它锁(Exclusive Locks,简称 X X 锁锁)和共享锁共享锁(Share Locks,简称 S S 锁锁)。解决活锁问题解决活锁问题的方法是采用先来先服务。解决死锁方法解决死锁方法:(1)预防死锁的发生;(2)允许发生死锁,然后采用一定手段定期诊断系统中有无死锁,假设有则解除之。预防死锁的方法: 一次封锁法, 顺序封锁法死锁的诊断:超时法,事务等待图法4,并发调度的可串行性P299-P230定义定义:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行这些事务时的结果相同。冲突操作冲突操作是指不同的事务对同一个数据的读写操作和写写操作。不同事务的冲突操作不能交换。不同事务的冲突操作不能交换。 同一事务的两个操作不能交换。同一事务的两个操作不能交换。冲突可串行化调度是可串行化调度的充分条件,不是必要条件。5,两段锁协议 P301-P302两段锁协议:指所有事务必须分两个阶段分两个阶段对数据项加锁和解锁。第一阶段是获得封锁获得封锁,也称为扩展阶。 第二阶段是释放封锁释放封锁,也称为收缩阶段。事务遵守两段锁协议是可串行化调度的充分条件,而不是必要条件。