《数据库系统概论》(第三版)

    技术2022-05-11  75

    《数据库系统概论》(第三版)

        数据库最基本的一本教科书,高等教育出版社出版。为了加深对数据库基本知识的理解,重新翻看了一遍,为进一步掌握学习数据库知识打基础。    全书分为四部分:基础、设计、系统、新技术。按书中的顺序,下面记录了读书时的笔记:

        第一篇 基础篇    1:绪论    1.1:概述     数据库系统的组成:数据库、数据库管理系统、应用系统、数据库管理员和用户。    数据库技术的发展:人工管理——文件系统——数据库系统。    数据库系统的特点:实现整体数据的结构化、数据共享、低冗余、易扩充、数据物理独立和数据逻辑独立、数据由DBMS统一管理。    1.2:模型    数据模型:由数据结构(静态)、检索/更新(动态)、约束条件。    主要的数据模型有:层次模型、网状模型、关系模型、面向对象模型。    概念模型:由实体、属性、码、域、实体型、实体集、联系组成,表示方法是E-R图。    1.3:结构    三级模式:模式(所有用户的公共数据视图)、外模式(数据用户视图)、内模式(存储模式)。    三级模式构成两种映象保证逻辑独立性和物理独立性。    外模式/模式映象:保持外模式不变使数据程序的逻辑独立性,称为数据的逻辑独立性。    模式/内模映象:保持模式不变,以使得外模式依赖的程序不变,称为数据的物理独立性。    1.4:组成    硬件平台及数据库、软件、人员。    人员包括:DBA(数据库管理员)、系统分析人员/数据库设计人员、应用程序员、用户。    1.5:研究    研究领域是;数据库管理系统软件、数据库设计、数据库理论。

        2:关系数据库    2.1:概述:    关系指一张二维表、关系操作是集合操作、需要满足实体完整性、参照完整性,用户定义完整性。    2.2:定义:    关系可以有三种类型:基本表、查询表、视图表。    R(U、D、dom、F):U——属性名集合 D——属性对应的域 dom——属性向域的映象     F——属性同数据的依赖关系集合。    2.3:完整性    实体完整性——表中主码来保证行数据的唯一性。    参照完整性——主码和外码关联。    用户定义的完整性——用户定义的语义条件。    2.4:关系代数    传统的集合运算有:并、差、交、广义笛卡尔积。    关系运算:选择、投影、连接、除。    2.5:关系演算    元组关系演算语言:ALPHA。    域关系演算语言:QBE。

        3:SQL    SQL太熟了,不多说,只看一下嵌入SQL:    3.1:SQL与主语言的通信方式    SQL通信区:通过SQLCA数据结构来存储执行状态。    主变量:通过程序变量来传参。    游标:用来存储多条记录,与上述两种方式综合使用。    游标主要通过Declare定义,Open打开,Fetch读取,Close关闭。另外可以使用Current来Update或Delete。    3.2:动态SQL    这里的动态SQL更多指的是程序设计方面的知识,不指SQL本身。

        4:关系系统及查询优化    4.1:关系系统的定义    不苛求关系系统一定要支持完整的关系模型,最小定义为:    支持关系数据库(表结构),支持选择、投影和连接。    分类:表式系统、最小关系系统、完备关系系统、全关系系统。    全关系系统的十二原则,略。    4.2:查询优化    优化一般分为四个步骤:    a:将查询转变为语法树。    b:用等价原则将语法树换成标准形式。    c:选择最优算法。    d:生成最终的查询计划。    一般商品采用基于代价的优化算法:    总代价 = I/O代价 + CPU代价 + 内存代价      4.3:优化的原则    a:选择运算优先。    b:对连接进行预处理:如排序。    c:投影和选择可同时进行。    d:结合投影和双目运算,减少扫描。    e:把选择和笛卡尔积结合为连接运算。    f:找出公共子表达式。    4.4:利用关系代数的等价变化规则优化。

        5:关系数据理论    这节讲的概念比较多,有些复杂,但最重要的是范式定义:    第一范式:关系、作为一张二维表、每一分量必须不可分。    2NF:在1NF的基础上,非主属性完全函数依赖于码。    3NF:每一个非主属性既不部分依赖于码也不传递依赖于码。    BCNF:所有主属性对每一个不包含它的码完全函数依赖,没有任何属性完全函数依赖于非码的任何一组属性。唉,太复杂了。    模式分解:没弄明白。 


    最新回复(0)