数据库原理论文数据库学习总结学号: @@@@@@@@@@姓名: @@@@@@@专业: @@@@@@@@@@@@@@@@ 班级: @@@@@@@@@@@数据库内容总结本学期主要学习了一些数据库的基础知识,数据库的设计与应用开发,及数据库系统知识。
其中基础部分主要包括数据库的基本概念和基础知识,数据库的设计与应用开发主要包括一些数据库设计和系统编程,系统知识包括查询处理和事务处理。
首先是绪论部分,第一章概述了数据库的基本概念,如:Data、DB、DBMS。
DBMS是数据库的“管家”,能高效率的获取和维护数据。
其中数据库的优点在于数据的共享性高、冗余度低、易扩充、而且数据独立性高。
数据模型是数据库系统的核心和基础,数据模型三要素包括数据结构、数据操作和完整性约束。
概念模型也称信息模型,用于信息世界的建模,E-R模型是这类模型的典型代表,E-R方法简单、清晰、应用十分广泛。
最常用的数据库模型包括层次模型、网状模型和关系模型,但是关系模型已逐渐取代了层次模型和网状模型。
层次模型和树形结构相类似,结构清晰,查询效率高,但是不便于数据更新,网状模型克服了层次模型的部分缺点,但是用户不便于使用,关系模型是建立在数学概率基础上的,用户易懂易用,但查询效率不高。
最后,数据库系统三级模式和两层映像的系统结构保证了数据库系统结构保证了数据库系统中能够具有较高的逻辑性和物理独立性。
我觉得在学习第一章时,要注意识记一些概念,掌握和理解一些概念,为下面学习打好基础。
第二章关系数据库。
关系数据库系统是支持关系模型的数据库系统,包括关系模型的数据结构,关系的三类完整性以及关系操作。
关系模型的数据结构非常简单,只包含单一的数据结构----关系。
在用户看来就一张二维表,关系的属性值包括候选码、主码、主属性、全码等。
关系有三种类型:基本表、查询表、视图表。
关系操作包括Query、Insert、Delete、Update,关系操作的特点是集合操作,操作的结果和对象都集合。
关系的完整性包括实体完整性、参照完整性和用户定义的完整性。
其中实体和参照是必须具备的特性。
实体完整性是指若A是关系R的主属性,则A不能为NULL,如在Student表中,Sname若为主码,则不能为NULL,参照完整性就是关系与关系间的引用。
即A关系中某个属性需要参照B关系的属性取值。
用户定义完整性是针对某一具体关系数据库的约束条件。
如:某个属性必须取唯一值,某个非主属性也不能取空值。
关系代数是一种抽象的查询语言,它用对关系的运算来表达查询,关系运算包括选择、投影、连接、除等,集合运算包括并,差,交,笛卡儿积。
其中选择是从关系R中选取使逻辑表达式F为真的元祖。
这是从行的角度进行的运算;投影操作时从列的角度进行的运算是关系R上的投影是从R中选择出若干属性列组成新的关系。
连接(Join)也称为θ连接,它是从两个关系的笛卡儿积中选取属性间满足一定条件的元祖、连接运算包括等值连接,一种是自然连接;等值连接是将属性相等的元祖连接;自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且把重复列去掉。
一般的连接是从行的角度进行运算,但自然连接是同时从行和列的角度进行运算。
关系演算可分为元组和域关系演算,主要有GET、PUT、HOLD、UPDATE、DELETE 等。
语句的基本格式为:操作语句工作空间名;操作条件更新操作需注意,单纯检索数据用GET,若为修改的读元组时必须用HOLD 语句,HOLD语句,HOLD语句是带有并发控制的GET语句。
在学习本章时需注意掌握基本概念,包括关系模式的数据结构,关系操作和关系完整性,还要了解关系操作和演算语句的使用。
第三章标准语言SQL,即结构化查询语言,是关系数据库的标准语言。
SQL 是一个通用的功能极强的关系数据库语言,包括数据定义,数据查询,数据更新。
数据定义包括新建数据库,表定义,视图,索引定义。
定义模式实际上定义了一个命名空间,在这个空间中可以进一步定义数据对象,如:表,视图等。
定义表时,用:Create table 表名列名;在新建查询里输入类似命令语句,执行语句后,就会建一个空表,删除修改表时,同样输入相应SQL语句,执行SQL语句后,操作即可完成。
索引的建立是为了加速查询速度的手段,用户可根据需要建一个或多个索引。
数据查询是数据库的核心操作,SQL提供了Select语句,格式为:Select 目标表达式 From 表名|视图名 Where 条件表达式;该操作可根据具体情况省去Where,但是Select From 必须保留。
Group by 子句是将查询结果某一列或多列的值分组,值相等的为一组,目的是为了细化聚集函数的作用对象,分组后聚集函数将作用于每一个组,即每一组都有一个函数值。
连接查询是一个查询涉及到两个以及两个以上的表,若要进行查询。
首先要将表连接在一起。
连接可以是等值与非等值、自然连接,也可以是自然连接、外连接,在表连接好时,进行查询即可,同时查询的条件也可是两个以上,若有多个条件时用And连接,其它与简单查询格式一样。
嵌套查询很显然是在查询中再套一个查询,可分为内层查询和外层查询,也可分为父查询与子查询,在嵌套查询时需注意先做内层查询,在做外层查询,而且子查询不依赖父查询。
数据更新包括插入、删除和修改数据。
插入元组使用Insert语句,修改数据用Update语句,删除时用Delete语句。
视图是从一个或几个基本表导出的表,有关视图的相关操作与基本表的操作相似,如:Create View 视图名列名 As 子查询;但是子查询中可有任何复杂的Select语句,但不允许有Order by 子句和distinct。
删除视图用Insert,Delete,Update语句。
在学习SQL语句时,要多加练习使用各种命令语句,熟练掌握和使用各种SQL语句,加强使用试验练习。
第四章数据库安全性,它是DBMS提供统一的数据保护功能来保证数据库的安全可靠和正确有效,实现数据库系统安全的技术和方法有多种,最重要的是存取控制技术,视图技术,审计技术。
大型数据库管理系统几乎都支持自主存取控制,这里主要通过SQL的Grant 语句和Revoke语句来实现,Grant语句向用户授予权限,Revoke语句收回授予的权限,数据库授权由DBA在创建用户时实现。
Grant 权限 ON 对象类型对象名 TO 用户;语义为:将指定操作对象的指定操作权限授予指定用户,发出Grant语句的可以是DBA,也可以是数据对象创建者,也可是拥有该权限的用户。
Grant语句可以一次向一个用户授权,也可向多个用户授权,还可以一次传播多个同类对象的权限,甚至一次可以完成对基本表和属性列这些不同对象授权,Grant使用起来十分方便。
Revoke语句收回权限,格式为:Revoke 权限 ON 对象类型对象名 From 用户;可见SQL语句提供了非常灵活的授权机制,DBA拥有对数据库中所有对象的所有权限,可根据实际情况将不同的权限授予不同的用户。
用户可以“自主”的决定将数据的存取权限授予任何人,也可收回授出权限,我们称这样的存取控制为自主存取控制。
数据库角色是被命名的一组与数据库操作相关的权限,角色是权限的集合,可以为一组具有相同权限的用户创建了一个角色,使用角色来管理数据库权限可以简化授权的过程,创建角色使用Create role 角色名给角色授权Grant 权限 ON 对象类型对象名 TO 角色角色权限的收回依然用Revoke 语句。
视图机制把要保密的数据对于无权存取的用户隐藏起来,从而自动地对数据提供一定程度上的安全保护。
审计功能把用户对数据库的所有操作自动记录下来放入审计日志中,DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法数据的人、时间和内容等。
本章主要学习了保护数据库的安全,以及权限的授予与收回。
需要注意灵活运用SQL语句提供的Grant 和Revoke语句保护数据库安全。
第五章数据库完整性,是为了保证数据库中存储的数据的正确性,也就是符合现实世界语义机制,完整性检查机制和违背完整性约束条件时RDBMS采取的动作等。
关系模型的实体完整性实在Create table 中用Primary key 定义。
对单属性构成的码有两种说法:列级约束条件,主属性不能取空值也不可重复,表级定义约束条件,两个属性,其中只有一个能放在表级。
为了保证完整性自动进行检查:1:检查主码值是否唯一,如果不唯一则拒绝插入或修改。
2:检查主码的各个属性是否为空,只有一个为空则拒绝插入或修改。
参照完整性若出现可能破坏完整性时的情况,可根据实际情况采取NO Action, Cascade 设置为空值操作。
用户定义的完整性是针对某一具体应用的数据库必须满足的语义要求,属性上的约束条件定义包括:NOT NULL,Unique, Check语句。
触发器类似于约束条件,但是比约束条件更加灵活。
触发器是定义在关系表上的由事件驱动的特殊过程。
可以用于数据库完整性检查,也可用来实现数据库的其他功能。
本章主要学习完整性约束条件,以及违反完整性的操作一般处理是采用默认方式,即拒绝执行。
我们还要了解不同的处理策略。
要根据应用语义来定义合适的处理策略,保证数据库的数据的正确性和相容性。
第六章关系数据理论,主要是介绍规范化理论,讨论各种范式及可能存在的插入和删除等毛病,并直观描述解决方法。
通常按属性间依赖情况来区分关系规范化的程度为第一范式、第二范式、第三范式、第四范式等。
然后直观地描述如何将具有不合适性的关系转换为更合适的形式。
关系模式的规范化过程是通过关系模式的分解来实现的,把低一级的关系模式分解为若干个高一级的关系模式,这种分解不是唯一的。
第七章数据库设计主要讨论的是设计的方法和技术。
基于RDBMS的关系数据库设计问题,主要学习数据库设计各个阶段的目标方法和应用注意事项,其中的重点是概念结构的设计和逻辑结构的设计。
概念结构的设计通常有四种方法:自上而下,自下而上,逐步扩张,混合策略。
逻辑结构设计一般分为3步:1:将概念结构转换为一般关系,网状层次模型。
2:将转换来的关系,网状、层次模型向特定DBMS支持下的数据模型转换。
3:对数据模型进行优化。
第九章关系查询处理和查询优化,查询处理是RDBMS的核心,查询优化技术的查询处理的关键,它是RDBMS语言处理中最重要的、最复杂的部分。
第十章数据库恢复技术,事务处理技术主要包括数据库恢复技术和并发控制技术,数据库恢复机制和并发控制机制数据库管理系统的重要组成部分。
本章主要掌握一些概念和常用技术。
本学期的内容总结总的来说很多,很碎。
概念性的东西很多,需要花费大量的精力记忆这些概念。