ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:95.16KB ,
资源ID:3293776      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3293776.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库技术复习提纲.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库技术复习提纲.docx

1、数据库技术复习提纲第1章 序言1.1 数据库系统相对文件系统的优势1数据库系统(DBS)的特点(相对文件系统)(1)数据库系统由数据库管理系统(DBMS)管理和控制数据。DBMS可以解决数据安全、数据完整性检查、并发控制和数据库恢复等问题。由DBMS屏蔽数据存取细节:应用程序DBMS数据库(2)数据结构化程度高。数据库存储了整个组织的数据,数据库既存储数据,又存储数据之间的联系。(3)数据独立性高。数据独立性包括数据的物理独立性和数据的逻辑独立性。物理独立性指用户的应用程序与存储在磁盘上的数据(数据库中的数据)相互独立,即应用程序只处理数据的逻辑结构,而不关心数据的物理存储。逻辑独立性指用户的

2、应用程序与数据库的逻辑结构相互独立,即数据的逻辑结构发生改变,应用程序可以不变(如:表中增加一个列,应用程序可以不变)。应用程序按逻辑结构组织的数据按物理结构组织的数据应用程序外模式模式内模式;或者,应用程序模式内模式(4)数据的共享高,冗余度低,易扩充。数据库的数据面向整个系统,而不是某个特定的应用,数据可以被多个用户、多个应用系统共享使用。数据共享(集中控制)可以大大减少数据的重复性(冗余),节约存储空间,更容易保持数据的一致性。由于数据面向整个系统,且结构化程度高,因此容易增加新的应用,易于扩充,可以适应各种用户的要求。数据库存储整个企业或组织的数据1.2数据库系统的组成(1)数据库(D

3、B)。定义1:自描述的集成的表的存储(有点片面,并不是所有数据库均采用表方式存储的)。定义2:长期存储在计算机内,有组织的,可共享的数据集合。数据库一般包括:用户数据、元数据、索引、存储过程、触发器、安全数据、备份/恢复数据等。DB的内容?(2)数据库管理系统(DBMS)及其开发工具。是系统软件,主要功能包括:数据库创建和维护功能、数据库运行管理功能、数据定义和操纵功能等。商业系统:Access、SQL Server、Oracle、Sybase等。开源系统:MySQL、PostgreSQL、SQLite、Firebird(Borland的InterBase)、SimpleSQL、Berkely

4、 DB、Minosse等(3)数据库应用系统。(4)用户和数据库管理员(DBA)。工作领域的知识工作者,建立数据分析模型,抽取数据进行分析;程序员,编写数据库应用系统;数据库管理员,决定数据库中的信息内容和结构,决定数据库的存储结构和存取策略,定义数据的安全性要求和完整性约束条件,监控数据库的使用和运行,数据库的改进和重组重构。用户?DBA?职责?第2章 结构化查询语言简介2.1 SQL特点(1)关系数据库的标准语言:目前DBMS广泛接受的标准是ANSI-92(SQL2)。(2)SQL是数据子语言:用于数据查询、数据操纵、数据定义和数据控制等,核心包括数据定义语言(DDL)、数据操纵语言(DM

5、L)和数据控制语言(DCL)。(3)非过程式语言:SQL语句只提出“做什么”,而不关心“怎么做”(这步由DBMS负责完成)。对用户隐藏了数据的访问路径2.2 SELECT语句的使用2.2.1SELECT语句框架(摘自JETSQL40.CHM)1.SELECT predicate * | table.* | table.field1 AS alias1 , table.field2 AS alias2 , .FROM tableexpression , .IN ExternaldatabaseWHERE.GROUP BY.HAVING.ORDER BY.WITH OWNERACCESS OPTI

6、ON;(1)predicate:谓词,限定返回的记录数,可用的谓词包括ALL、DISTINCT、DISTINCTROW和TOP,没有指明谓词时,表示ALL。(2)选择全部列使用*。(3)table.*:指定表的全部列(多表查询),table为表的名称。(4)field1 AS alias1:列名称取别名。别名不能用于WHERE子句、GROUP BY子句、HAVING子句和ORDER BY子句。(5)WHERE子句:记录的筛选条件。(6)GROUP BY子句:分组统计的依据,即根据哪些列进行分组和统计。(7)HAVING子句:设置分组统计结果的筛选条件。(8)ORDER BY子句:设置返回结果的

7、排列顺序,ASC表示升序,DESC表示降序。3语法规则(1)SQL语句以分号作为语句结束符。(2)SQL语句的关键字大小写不敏感。即,Select、select和SELECT的写法是一样的。(3)标识符:用以给数据对象命名,数据对象如:表、列、约束、触发器、存储过程、视图等。如果标识符会让DBMS产生歧义,则必须使用方括号将标识符括起来,如,假设订单表命名为Order,其中订单号命名为Order Number,选择订单号为1的订单资料应写成SELECT * FROM OrderWHERE Order Number = 1;(4)字符串常量:用单引号括起来,常量中包含单引号字符时,该单引号字符必

8、须使用两个连续的单引号代替。如,Water Sports、Im a student.。(5)比较运算符:,=,=,=, 逻辑运算符;NOT AND OR,IN,BETWEEN,LIKE。(8)BETWEEN:例x BETWEEN 100 AND 200,这个写法与x = 100 AND x = 60);(2)使用连接(a)内连接:Student s INNER JOIN Grade g ON s.SNo = g.SNo,结果为包含列(SNo, SName, SNo, CNo, Grade)的表,表中只包含符合连接条件的行。(b)左外连接:Student s LEFT OUTER JOIN Gr

9、ade g ON s.SNo = g.SNo,结果仍为包含列(SNo, SName, SNo, CNo, Grade)的表,表中除了包含符合连接条件的行之外,还包含没有选课的学生资料,如,/Tom没有选课,但他的记录也会出现在结果中,即,结果会包含一行(, Tom, NULL, NULL, NULL)。保证左表数据完整。(c)右外连接:Grade g RIGHT OUTER JOIN Student s ON s.SNo = g.SNo,结果为包含列(SNo, CNo, Grade, SNo, SName)的表,表中除了包含符合连接条件的行之外,还包含没有选课的学生资料,如,/Tom没有选课,

10、但他的记录也会出现在结果中,即,结果会包含一行(NULL, NULL, NULL, , Tom)。保证右表数据完整。(d)我们可以对连接后的表进行筛选、排序、分组统计等操作。例:列出没有选课的学生资料。这个例子也可以用子查询实现。SELECT s.*FROM Student s LEFT OUTER JOIN Grade g ON s.SNo = g.SNoWHERE g.SNo IS NULL;分数:大约10分左右第3章 关系数据库3.1 数据模型(1)数据模型定义:数据模型是严格定义的一组概念的集合,这组概念精确地描述了系统的静态特性、动态特性和完整性约束条件。(2)组成要素:数据结构、数

11、据操作和数据的约束条件。(a)数据结构:描述系统的静态特性。如,关系模型用二维表结构描述数据及其联系。(b)数据操作:描述系统的动态特性,动态特性是指用户使用数据模型定义的操作,对数据进行检索和更新,使系统的状态发生变化。如,关系模型提供了SQL语言作为操作数据的手段。(c)数据的约束条件:数据的约束条件是一组完整性规则的集合。完整性规则:是给定的数据模型中数据及其联系所具有的约束和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效和相容。如,数据库中存在学生表S(SNo, Name)、课程表C(CNo, Description)和选课表SC(SNo, CNo,

12、Grade)。我们希望有一个完整性规则,仅当指定有效的学生和有效的课程时,才能填入课程成绩,我们也希望有一个完整性规则,使填入的成绩符合5分制的要求,另外,我们还可能希望有一个完整性规则,当某个学生转学之后,除了删除这个学生在学生表S中的记录,同时删除与这个学生相关的其它资料。这些完整性规则将影响数据操作,即保证数据库状态及状态变化符合要求。数据的约束条件是由用户需求决定的。(3)数据模型是DBMS实现的基础3.2 关系模型1. 重要概念 (1)关系模式:表头,描述表的结构,红色框部分。(a)属性:列。(b)域:列数据的取值范围。(c)主键:某一列或列组合,通过它的一个值可以唯一地确定一行数据

13、,如表中的学号。(2)关系:表中存储的数据,蓝色部分。(a)元组:一行数据。(b)分量:元组中特定列上的值。(3)关系类型:基本关系(或简称基表)、视图和查询表。(a)基表:实际存在的表,存储全局数据。(b)视图:由基表或其它视图导出(抽取)的表,是虚表,不实际存储数据,它反映特定用户的局部需求。如,学生(学号, 姓名, 性别, 籍贯, 照片, ),这张表(基表)存储了符合大部分用户需求的学生资料,如果任课教师只关心学生的学号和姓名,我们可以导出一个虚表满足任课教师的需要,学生视图(学号, 姓名)。(c)查询表:查询结果构成的表,我们无法对查询表进行任何数据操作。(4)关系必须满足的最基本要求

14、:分量原子性,即分量不可再分。基表的基本要求?(5)基本关系(基表)的性质(6条):(a)列是同质的,即每列中的分量是同一类型的数据,来自同一个域。(b)列名称在表中不重复,不同的列可以出自同一个域,即取值范围相同。(c)列顺序不重要。(d)行数据不重复。(e)行顺序不重要。(f)分量原子性。(6)关系的形式化定义(1)域:是一组具有相同数据类型的值的集合。(2)笛卡尔积:给定一组域D1, D2, , Dn,这些域中可以有相同的。D1, D2, , Dn的笛卡尔积为D1 x D2 x x Dn = (d1, d2, , dn) | di Di, i=1, 2, , n。(d1, d2, , d

15、n) 称为n元组或元组,di 称为分量。D1 = 导师集合 = 张清玫, 刘逸 D2 = 专业集合 = 计算机, 信息D3 = 研究生集合 = 李勇, 刘晨D1 x D2 x D3 = (张清玫, 计算机, 李勇), (张清玫, 计算机, 刘晨), (张清玫, 信息, 李勇), (张清玫, 信息, 刘晨), (刘逸, 计算机, 李勇), (刘逸, 计算机, 刘晨), (刘逸, 信息, 李勇), (刘逸, 信息, 刘晨)(3)关系:D1 x D2 x x Dn的子集称为在域D1, D2, , Dn上的关系,表示为R(A1, A2, , An), R为关系名,n为关系的目或度,分量名字Ai称为属性

16、。(7)关系模式的形式化定义关系模式:关系的描述称为关系模式,它可以形式化地表示为:RU, D, dom, F,其中,R为关系名,U为组成该关系的属性名集合,D为属性组U中属性来自的域的集合,dom为属性向域的映射集合,F为属性间数据的依存关系集合。关系模式经常简写为:R(U)或R(A1, A2, , An)。2. 数据结构 关系模式+关系(1)在一个给定的应用领域中,所有数据及其联系的关系的集合构成一个关系数据库。(2)对关系数据库的描述,它包括若干域的定义以及在这些域上定义的若干关系模式。3. 数据操作 SQL、关系代数和关系演算,三者的运算能力等价 关系代数完备操作集:并、差、笛卡尔积、

17、投影和选择4. 数据完整性 实体完整性约束?RDBMS必须提供实体完整性规则:若属性A是基本关系(基表)R的主属性,则属性A不能取空值。(a)若关系中的某个属性或属性组的值可以唯一地确定一个元组,则该属性或属性组称为候选键。关系可以有多个候选键,如,学生(学号, 姓名, 籍贯, 性别, 身份证号, ),其中,学号和身份证号都是该表的候选键,系统实现时指定的候选键称为主键。主键包含的属性称为主属性。非候选键的属性称为非主属性。(b)空值表示没有数据。SQL用NULL表示空值,用x IS NULL和x IS NOT NULL判断x是否空值。 参照完整性约束?RDBMS必须提供 参照完整性规则:若属

18、性(或属性组)F是基本关系(基表)R的外键,它与基本关系(基表)S的主键KS相对应(基本关系R和S不一定是不同关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主键值。(a)学生(学号, 姓名, 班长),班长属性是外键。(b)课程(课程号, 课程名)(c)选课(学号, 课程号, 成绩),学号属性和课程号属性都是外键,且它们的组合是主键。 用户定义的完整性约束:默认值约束、空值约束、取值范围约束、触发器等等任何RDBMS都应支持实体完整性和参照完整性,但对用户自定义完整性规则方面的支持不尽相同。5 关系数据语言(1)关系数据语言特点:非过程式

19、的集合操作语言;完备的表达能力。(2)关系代数、关系演算和SQL的表达能力是相同的。(3)关系代数的完备操作集由并、差、广义笛卡尔积、选择和投影构成。第4章 关系数据理论4.1 重要概念1. 函数依赖? 函数依赖的定义:设R(U)是属性集U上的关系模式. X, Y是U的子集. 若对于R(U)的任意一个可能的关系r, r中不可能存在两个元组在X上的属性值相等, 而在Y上的属性值不等, 则称X函数决定Y或Y函数依赖于X, 记作XY.2. 候选键?主属性?非主属性?候选键:设K为R(U, F)中的属性或属性组合, 若U完全函数依赖于K, 则K为R的候选键. 若候选键多于一个, 则选定其中的一个作为主

20、键.主属性: 包含在任何一个候选键中的属性.注意: 这与实体完整性规则提到的主属性的解释不同. DBMS只能对用户指定的主键属性进行实体完整性约束, 而对其它候选键的存在是一无所知的.非主属性: 不包含在任何候选键中的属性.3. 范式?关系模式规范化? 范式实质 关系需要满足的条件 E.g., 符合第一范式(1NF)要求的关系必须满足分量原子性范式关系 5NF4NFBCNF3NF2NF1NF关系模式规范化 低一级范式的关系模式通过模式分解转换成若干个高一级范式的关系模式集合的过程1NF?2NF?3NF?BCNF? 若R1NF, 且每个非主属性完全函数依赖于候选键, 则称R2NF. 若R2NF,

21、 且每个非主属性均不传递函数依赖于候选键, 则称R3NF. 定义1: 若R3NF, 且每个主属性均完全函数依赖于候选键且均不传递函数依赖于候选键, 则称RBCNF. 定义2: 若R1NF, 且每个函数依赖的决定因素都含候选键, 则称RBCNF.4.2 规范化1. Armstrong公理系统 自反律?增广律?传递律?关系模式 RU, F, U为属性集, F为函数依赖集. 对 R 有以下推理规则: A1: 自反律. 若 Y X U (YXU), 则XY 为F所蕴涵. A2: 增广律. 若 XY 为F所蕴涵, 且 Z U (ZU), 则 XZYZ 为F所蕴涵. A3: 传递律. 若 XY 及 YZ

22、为F所蕴涵, 则 XZ 为F所蕴涵.Armstrong公理系统是有效的, 完备的.2. 规范化过程 数据语义函数依赖集 函数依赖集候选键(求属性集闭包),确定主属性和非主属性 通过模式分解,用高范式关系模式集替换低范式关系模式4.3 模式分解特性1. 分解的保持函数依赖性判别2. 分解的无损连接性判别3. 分解成3NF模式集可以既保持函数依赖又保证无损连接性第5章 使用E-R模型进行数据建模5.1 E-R模型1. 用途:表达概念模型(信息世界)的工具;不同于数据模型(DBMS)2. 基本元素:实体,属性,标识符,弱实体,超类实体,子类实体,HAS-A联系,最大粒度,最小粒度,ID依赖联系,IS

23、-A联系 传统画法和IE画法(鸦脚)3. 建模工具:ERwin,Visio,PowerDesigner,Designer5.2 数据建模1. 找实体,找属性,确定标识符实体: 用户想跟踪的事物.a) 两种理解: 实体类 & 实体实例属性: 用于描述实体的特性.b) 多值属性和组合属性的问题标识符: 用于区分实体的属性或属性组.2. 确定实体间的联系,确定联系的最大粒度和最小粒度联系: 表达实体之间的关系. a) 联系类, 实体类之间的关系; b) 联系实例, 实体实例之间的关系.联系的度: 联系中设计的实体个数.二元联系, 三元联系, etc.联系的命名: 可从任一实体的角度命名, 当实体之间

24、存在多种联系时, 应该给联系命名.联系可以具有属性.最大粒度联系实例涉及的实体实例的最大数目. 最小粒度联系实例涉及的实体实例的最小数目.通常最小粒度是1或0. 尽量准确.第6章 把E-R模型转换成关系数据库模式6.1 转换规则1. 实体转换成基表2. 联系的最大粒度如何转换?3. 最小粒度影响什么?第7章 SQL SERVER 2K初步7.1 DML1. INSERT,UPDATE,DELETE(1). INSERT 单记录插入insert into Student (sname, gender, enroll, prof)values (康, M, 2004, EC); 批量插入inser

25、t into Student (sname, gender, enroll, prof) select sname, gender, enroll, prof from Imported_Student; (2). UPDATE P181, 带条件的更新update CUSTOMERset City = New York City, State = NYwhere CustomerID = 1000; P181, 批量更新update CUSTOMERset City = New York City; (3).DELETE (谨慎使用) P182, 带条件删除delete from CUSTO

26、MERwhere CustomerID = 1000; 全部删除delete from CUSTOMER; 截断表trancate table CUSTOMER; (T-SQL)delete逐行删除数据, 触发器可用, 标识列计数器不变trancate table整个表删除, 触发器不可用, 标识列重新计数, 另外还有一些情况不能使用它, 参考帮助2. EXISTS,NOT EXISTS,INNER JOIN,LEFT OUTER JOIN,RIGHT OUTER JOIN7.2 事务1. 事务?事务a) 用户定义的一个数据库操作序列,b) 是不可分割的工作单位,c) 是数据库应用程序的基本逻

27、辑单元.d) 是数据库恢复技术和并发控制技术的基础.2. 事务特性?(ACID) 原子性 (Atomicity) 事务包含的操作序列是一个整体,每个操作或者都成功执行, 或者都不执行.一致性 (Consistency)数据库如果在事务执行前是一致的,则执行事务后仍然应该是一致的.隔离性 (Isolation)事务之间互不干扰. (并发问题)持续性 (Durability)事务一旦提交 (成功执行), 它对数据库的改变是永久性的.ACID 特性acid rain:酸雨3. 显式事务框架7.3 视图1. 视图?视图是一个或几个基本表 (或视图) 构造出的一个虚拟表.视图是一个SELECT语句. (见P186注释)2. 视图特性?数据库只存放视图的定义, 不存放视

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1