数据库期末考试复习知识点总结_第1页
数据库期末考试复习知识点总结_第2页
数据库期末考试复习知识点总结_第3页
数据库期末考试复习知识点总结_第4页
数据库期末考试复习知识点总结_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

数据库期末考试复习知识点总结*目标列表达式:可以是列名、表达式、聚合函数(如COUNT,SUM,AVG,MAX,MIN)等。*WHERE子句:指定查询条件,筛选满足条件的元组。*GROUPBY子句:将查询结果按某一列或多列的值分组,值相等的为一组。*HAVING子句:筛选满足条件的组,与GROUPBY配合使用,作用于组。WHERE子句作用于基本表或视图,HAVING子句作用于组。*ORDERBY子句:将查询结果按指定列进行排序,ASC为升序(默认),DESC为降序。复杂查询包括连接查询(内连接、外连接、交叉连接)、嵌套查询(子查询)、集合查询(UNION,INTERSECT,EXCEPT)等。子查询是指嵌入在其他SQL语句中的SELECT语句,常用的谓词有IN,NOTIN,EXISTS,NOTEXISTS,ANY,ALL等。3.4数据控制(DCL)SQL的数据控制功能主要包括事务管理和数据安全性控制。*授权:`GRANT权限[,权限]...ON对象类型对象名TO用户[,用户]...[WITHGRANTOPTION]`。*回收权限:`REVOKE权限[,权限]...ON对象类型对象名FROM用户[,用户]...[CASCADE|RESTRICT]`。四、数据库规范化规范化理论是数据库设计的理论基础,其主要目的是解决关系模式中存在的数据冗余、插入异常、删除异常和更新异常问题。4.1函数依赖(FD)函数依赖是指关系中属性间的一种约束关系。设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X,记作X→Y。*平凡函数依赖与非平凡函数依赖:如果Y⊆X,则X→Y为平凡函数依赖;否则为非平凡函数依赖。*完全函数依赖与部分函数依赖:在R(U)中,如果X→Y,并且对于X的任何一个真子集X',都有X'↛Y,则称Y完全函数依赖于X,记作X→<sub>F</sub>Y;若X→Y,但Y不完全函数依赖于X,则称Y部分函数依赖于X,记作X→<sub>P</sub>Y。*传递函数依赖:在R(U)中,如果X→Y(Y⊈X),Y↛X,Y→Z(Z⊈Y),则称Z传递函数依赖于X,记作X→<sub>t</sub>Z。4.2范式(NF)范式是符合某一种级别的关系模式的集合。常用的范式有:*1NF:如果一个关系模式R的所有属性都是不可分的基本数据项,则R∈1NF。1NF是关系模式最基本的要求。*2NF:若R∈1NF,且每一个非主属性完全函数依赖于R的码,则R∈2NF。2NF消除了非主属性对码的部分函数依赖。*3NF:若R∈2NF,且每一个非主属性都不传递函数依赖于R的码,则R∈3NF。3NF消除了非主属性对码的传递函数依赖。*BCNF:设关系模式R∈1NF,如果对于R的每个函数依赖X→Y(Y⊈X),X都含有码,则R∈BCNF。BCNF消除了主属性对码的部分和传递函数依赖。规范化的过程就是将一个低一级范式的关系模式通过模式分解转换为若干个高一级范式的关系模式的集合。一般来说,数据库设计中达到3NF或BCNF即可满足大多数应用需求。五、数据库设计数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。数据库设计通常分为以下几个阶段:1.需求分析阶段:详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,收集支持系统目标的基础数据及其处理方法。需求分析是整个设计过程的基础,其结果是否准确地反映了用户的实际需求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。2.概念结构设计阶段:概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。最常用的方法是E-R图(实体-联系图)方法。E-R图由实体、属性和联系三要素构成。3.逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型(主要是关系模型),并对其进行优化。转换过程中要考虑如何处理实体和联系,以及如何确定数据类型、主码、外码等。4.物理结构设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。5.数据库实施阶段:运用DBMS提供的数据语言(如SQL)及其宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。6.数据库运行和维护阶段:数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。六、数据库事务管理与并发控制6.1事务的基本概念事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。事务具有四个特性(ACID特性):*原子性(Atomicity):事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。*一致性(Consistency):事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。*隔离性(Isolation):一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。*持续性(Durability):也称永久性(Permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。6.2并发控制多个事务同时对数据库进行操作时,若不加控制,可能会产生丢失修改、不可重复读和读“脏”数据等数据不一致问题。并发控制的主要技术是封锁(Locking)。*封锁类型:*排它锁(ExclusiveLocks,简称X锁):又称写锁。若事务T对数据对象A加上X锁,则只允许T读取和修改A,其他任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。*共享锁(ShareLocks,简称S锁):又称读锁。若事务T对数据对象A加上S锁,则T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。*封锁协议:对封锁方式约定的一些规则,包括何时申请锁、持锁时间、何时释放锁等。三级封锁协议就是通过不同的封锁规则来解决不同的不一致问题。*活锁与死锁:*活锁:是指当多个事务请求对同一数据加锁时,造成一些事务永远处于等待状态,得不到资源的情况。可以通过采用先来先服务的策略来避免活锁。*死锁:是指两个或多个事务各自等待对方释放锁,而造成的永久等待的局面。预防死锁通常有一次封锁法和顺序封锁法;诊断死锁通常有超时法和等待图法,

温馨提示

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

评论

0/150

提交评论