数据库系统基础知识复习提纲_第1页
数据库系统基础知识复习提纲_第2页
数据库系统基础知识复习提纲_第3页
数据库系统基础知识复习提纲_第4页
数据库系统基础知识复习提纲_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库系统基础知识复习提纲引言数据库技术是现代信息系统的核心基石,无论是软件开发、数据分析还是业务运营,都离不开对数据库的有效运用与管理。这份复习提纲旨在帮助你系统梳理数据库系统的基础知识,巩固核心概念,理清知识脉络,为进一步的学习和实践打下坚实基础。提纲力求覆盖关键知识点,并强调理解与应用。一、数据库系统基本概念1.1数据与数据模型*数据(Data):描述事物的符号记录,是数据库中存储的基本对象。理解数据的客观性、可识别性和可存储性。*数据模型(DataModel):对现实世界数据特征的抽象,是数据库系统的核心和基础。其组成要素包括数据结构、数据操作和完整性约束。*数据结构:描述数据的类型、内容、性质以及数据间的联系。*数据操作:对数据库中各种对象(型)的实例(值)允许执行的操作,包括查询、插入、删除、修改等。*数据的完整性约束:一组规则,用以限定符合数据模型的数据状态以及状态的变化,以保证数据的正确、有效和相容。*常见数据模型:层次模型、网状模型、关系模型、面向对象数据模型、对象关系数据模型、半结构化数据模型等。重点理解关系模型。1.2数据库、数据库管理系统与数据库系统*数据库(Database,DB):长期存储在计算机内、有组织的、可共享的大量数据的集合。其基本特征包括永久存储、有组织、可共享。*数据库管理系统(DatabaseManagementSystem,DBMS):位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据,高效地获取和维护数据。*主要功能:数据定义功能(DDL)、数据操纵功能(DML)、数据库的运行管理(如并发控制、安全性检查、完整性约束检查)、数据库的建立和维护功能(如备份恢复)。*数据库系统(DatabaseSystem,DBS):由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统。1.3数据库系统的组成*硬件平台:存储数据的物理设备,需考虑存储容量、I/O速度、处理能力等。*软件系统:DBMS、支持DBMS运行的操作系统、数据库应用开发工具、应用程序。*数据库:核心,存储在物理介质上的数据集合。*数据库用户:*数据库管理员(DBA):负责数据库系统的建立、维护和管理。*系统分析员与数据库设计人员:负责需求分析和数据库设计。*应用程序员:编写应用程序操作数据库。*最终用户:直接使用应用系统。1.4数据库技术的发展简史*人工管理阶段*文件系统阶段*数据库系统阶段(层次与网状数据库、关系数据库、新一代数据库技术)二、关系数据库2.1关系模型基本概念*关系(Relation):一个关系对应通常所说的一张表。*元组(Tuple):表中的一行即为一个元组,对应一条记录。*属性(Attribute):表中的一列即为一个属性,对应一个字段。*码(Key):*超码(SuperKey):能唯一标识元组的属性集。*候选码(CandidateKey):不含多余属性的超码。*主码(PrimaryKey):从候选码中选定一个作为唯一标识。*外码(ForeignKey):如果一个关系中的属性或属性组并非该关系的主码,但却是另一个关系的主码,则称其为该关系的外码。*关系模式(RelationSchema):对关系的描述,一般表示为:关系名(属性1,属性2,...,属性n)。*关系数据库:对应于一个关系模型的所有关系的集合。*关系数据库模式:对关系数据库的描述,包括若干关系模式。2.2关系代数*概述:一种抽象的查询语言,用对关系的运算来表达查询。*基本运算:*选择(σ,Selection):从关系中选择满足给定条件的元组。*投影(π,Projection):从关系中选择若干属性列组成新的关系。*连接(⋈,Join):从两个关系的笛卡尔积中选取属性间满足一定条件的元组。(重点:等值连接、自然连接)*除(÷,Division)*并(∪,Union)*差(-,Difference)*交(∩,Intersection)*笛卡尔积(×,CartesianProduct)*组合运算:通过基本运算的组合来表达复杂查询。*关系代数表达式及其应用:能够运用关系代数表达式表示实际查询需求。2.3SQL语言基础*概述:结构化查询语言(StructuredQueryLanguage),集数据查询、数据操纵、数据定义和数据控制功能于一体。特点:综合统一、高度非过程化、面向集合的操作方式、以同一种语法结构提供多种使用方式、语言简洁易学。*数据定义语言(DDL):*模式定义与删除*表的创建(CREATETABLE)、修改(ALTERTABLE)与删除(DROPTABLE)*索引的创建与删除*数据操纵语言(DML):*查询(SELECT):核心中的核心。SELECT子句、FROM子句、WHERE子句、GROUPBY子句、HAVING子句、ORDERBY子句。集合函数(COUNT,SUM,AVG,MAX,MIN)。连接查询(内连接、外连接)、子查询(相关子查询与不相关子查询)、集合查询(UNION,INTERSECT,EXCEPT)。*插入(INSERT):插入元组、插入子查询结果。*修改(UPDATE)*删除(DELETE)*数据控制语言(DCL):*授权(GRANT)*回收权限(REVOKE)*视图:*定义视图(CREATEVIEW)*查询视图*更新视图*视图的作用:简化查询、安全性、逻辑独立性。三、数据库设计3.1数据库设计概述*数据库设计的基本步骤:需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施阶段、数据库运行和维护阶段。*数据库设计的目标:满足用户需求、良好的性能、易于维护和扩展。3.2需求分析*任务:详细调查现实世界要处理的对象,充分了解原系统工作概况,明确用户的各种需求(信息需求、处理需求、安全性与完整性需求)。*方法:访谈法、问卷调查法、跟班作业法、查阅资料法等。*成果:数据字典、数据流图、需求说明书。3.3概念结构设计*任务:将需求分析得到的用户需求抽象为信息世界的概念模型(E-R模型)。*概念模型的特点:较强的语义表达能力,易于理解,易于修改,易于向各种数据模型转换。*E-R模型(实体-联系模型):*实体(Entity):客观存在并可相互区别的事物。*属性(Attribute):实体所具有的某一特性。*联系(Relationship):实体之间的联系。(一对一、一对多、多对多)*E-R图的绘制:实体型用矩形表示,属性用椭圆形表示,联系用菱形表示。*概念模型设计方法:自顶向下、自底向上、逐步扩张、混合策略。3.4逻辑结构设计*任务:将概念结构转换为某个DBMS所支持的数据模型(主要是关系模型),并对其进行优化。*E-R图向关系模型的转换:*实体型转换为关系模式。*联系的转换(1:1,1:n,m:n)。*数据模型的优化:基于规范化理论,对关系模式进行优化。*用户子模式设计:即视图设计。3.5数据库规范化理论*函数依赖:*基本概念:X→Y(X函数决定Y,Y函数依赖于X)。*平凡函数依赖与非平凡函数依赖。*完全函数依赖与部分函数依赖。*传递函数依赖。*码:候选码、主码、外码、主属性与非主属性。*范式(NormalForms,NF):*第一范式(1NF):关系中每一个属性都是不可再分的原子项。*第二范式(2NF):若R∈1NF,且每一个非主属性完全函数依赖于任何一个候选码,则R∈2NF。(消除非主属性对码的部分函数依赖)*第三范式(3NF):若R∈2NF,且每一个非主属性既不部分依赖于码也不传递依赖于码,则R∈3NF。(消除非主属性对码的传递函数依赖)*BC范式(BCNF):若R∈1NF,对任何非平凡的函数依赖X→Y,X均包含码,则R∈BCNF。(消除主属性对码的部分和传递函数依赖)*关系模式的分解:*分解的无损连接性。*分解的函数依赖保持性。*模式分解的算法(如达到3NF的保持函数依赖和无损连接的分解)。3.6物理结构设计*任务:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。*内容:*确定数据的存储结构:考虑存取时间、存储空间利用率、维护代价。*存取路径的选择与索引的设计:哪些属性列上建立索引,建立何种类型的索引。*分区与分片设计*评价:时间效率、空间效率、维护代价。3.7数据库实施与维护*数据库实施:建立数据库结构、数据载入、应用程序编码与调试、数据库试运行。*数据库维护:数据库的转储与恢复、数据库的安全性与完整性控制、数据库性能的监督、分析和改进、数据库的重组织与重构造。四、数据库完整性与安全性4.1数据库完整性*概念:指数据库中数据的正确性和相容性,防止不合语义的数据进入数据库。*实体完整性:*定义:主属性不能为空,主码的值唯一标识元组。*实现:CREATETABLE中用PRIMARYKEY定义。*参照完整性:*定义:外码必须是另一个关系主码的有效值,或为空值。*实现:CREATETABLE中用FOREIGNKEY...REFERENCES...定义。*参照完整性的违约处理:拒绝执行、级联操作、设置为空值。*用户定义的完整性:针对某一具体应用的数据必须满足的语义要求。如:属性值非空(NOTNULL)、属性值唯一(UNIQUE)、CHECK短语指定的条件。*完整性约束命名子句(CONSTRAINT):对完整性约束条件命名,便于修改和删除。*触发器(Trigger):一种特殊的存储过程,在特定事件发生时自动执行,可用于实现更复杂的完整性要求。4.2数据库安全性*概念:保护数据库以防止不合法使用所造成的数据泄露、更改或破坏。*数据库安全性控制的常用方法:*用户身份鉴别:系统提供的最外层安全保护措施(静态口令、动态口令、生物特征等)。*存取控制:*自主存取控制(DAC):用户对不同数据对象有不同的存取权限,用户可将权限授予他人。(GRANT,REVOKE)*强制存取控制(MAC):每一个数据对象被标以一定的密级,每一个用户被授予某一个级别的许可证。*视图机制:通过视图屏蔽掉一部分数据,实现对机密数据的保护。*审计(Audit):跟踪用户对数据库的所有操作,以便事后分析追责。*数据加密:对存储和传输的数据进行加密处理,防止数据在存储和传输过程中被窃取。*其他安全保护:如操作系统安全、网络安全等。五、数据库事务管理5.1事务的基本概念*事务(Transaction):用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。*事务的ACID特性:*原子性(Atomicity):事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。*一致性(Consistency):事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。*隔离性(Isolation):一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的。*持久性(Durability):一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。*事务的状态:活动状态、部分提交状态、提交状态、失败状态、中止状态。5.2并发控制*并发操作带来的数据不一致性:*丢失修改(LostUpdate)*不可重复读(Non-repeatableRead)*读“脏”数据(DirtyRead)*幻读(PhantomRead)*封锁(Locking)技术:*基本封锁类型:排它锁(X锁,写锁)、共享锁(S锁,读锁)。*封锁协议:*一级封锁协议:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。可防止丢失修改。*二级封锁协议:在一级封锁协议基础上,事务T在读取数据R之前必须先对其加S锁,读完后即可释放S锁。可防止丢失修改和读“脏”数据。*三级封锁协议:在一级封锁协议基础上,事务T在读

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论