数据库复习

基础

1.1四个基本概念

1.1.1数据(Data)

    数据与其语义是不可分的

1.1.2数据库(Database)

    基本特征:

  1. 数据按一定的数据模型组织、描述和存储
  2. 可为各种用户共享
  3. 冗余度较小
  4. 数据独立性较高
  5. 易扩展

1.1.3数据库管理系统(DBMS)

    数据管理软件

    主要功能:

  1. 数据定义功能
  2. 数据组织、存储和管理
  3. 数据操纵功能
  4. 数据库的事务管理和运行管理
  5. 数据库的建立和维护功能(实用程序)
  6. 其他功能

1.1.4数据库系统(DBS)

    (1)构成

    数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(DBA)

    硬件平台及数据库、软件、人员   

    (2)特点

        ①数据结构化

            整体数据结构化是数据库的主要特征之一

            数据的最小存取单位是数据项

        ②数据共享性高,冗余度低,易扩充

        ③数据独立性高

            物理独立性、逻辑独立性(应用程序与数据库中的关系)

            数据独立性由DBMS的二级映像功能保证

        ④数据由DBMS统一管理和控制

    (3)结构

        ①数据库系统模式的概念

        ②数据库系统的三级模式结构模式:一个数据库只有一个模式;是数据库系统模式结构的中间层;描述数据的全局逻辑结构外模式:一个数据库可以有多个外模式;介于模式与应用之间;描述数据的局部逻辑结构         内模式:一个数据库只有一个内模式 ,数据物理结构和存储方式的描述,                                       数据在数据库内部的表示方式                                                                                                                             

外模式包括若干视图和基本表。

模式包括若干基本表

内模式包括若干存储文件

模式与外模式的关系:一对多

外模式与应用的关系:一对多

        ③数据库的二级映像功能与数据独立性

三级模式是对数据的三个抽象级别

二级映像在DBMS内部实现这三个抽象层次的联系和转换:

    Ⅰ外模式/模式映像

        保证数据的逻辑独立性

        同一个模式可以有多个外模式,映像定义在外模式中

    Ⅱ模式/内模式映像

        保证数据的物理独立性

        数据库中模式/内模式映像唯一,映像定义在模式中

Ⅲ数据独立性

    特定的应用程序

数据库的二级映像保证了数据库外模式的稳定性,从底层保证了应用程序的稳定性

数据与程序之间的独立性,使得数据的定义和描述可以从应用程序中分离出去

数据的存取由DBMS管理

1.2数据管理技术的产生和发展

1.2.1人工管理阶段

1.2.2文件系统阶段

1.2.3数据库系统阶段

1.3数据模型

现实世界的模拟

(1)概念模型

(2)逻辑模型,物理模型(最底层的抽象)

1.3.1两步抽象

    客观对象-》概念模型-》数据模型

1.3.2数据模型的组成要素

    (1)数据结构(对系统静态特性的描述)

    (2)数据操作(对系统动态特性的描述)

    (3)完整性约束条件

1.3.3概念模型

    (1)信息世界中的基本概念

        实体、属性、码、域、实体型、实体集、联系

    (2)实体型之间、内部的联系

    (3)E-R方法

1.3.4最常用的数据模型

    (1)层次模型

        层次模型用树形结构来表示各类实体以及实体间的联系 

        层次模型实际上是网状模型的一个特例

    (2)网状模型

    (3)关系模型

关系模型

在关系模型中实体及实体间的联系都是用关系来描述

        在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。

1.数据结构关系元组属性主码域分量关系模式

        关系

        关系必须是规范化的,满足一定的规范条件

        最基本的规范条件:关系的每一个分量必须是一个不可分的数据项,不允许表中还有表。

关系术语

一般表格的术语

关系名

表名

关系模式

表头(表格的描述)

关系

(一张)二维表

元组

记录或行

属性

属性名

列名

属性值

列值

分量

一条记录中的一个列值

非规范关系

表中有表(大表中嵌有小表)

2.数据模型的操纵

    数据操作是集合操作,操作对象和操作结果都是关系

3.完整性约束

    实体完整性

    参照完整新

    用户定义的完整性

4.存储结构

    实体及实体间的联系用表表示

    表以文件形式存储

关系数据库

2.1关系数据结构及形式化定义

2.1.1关系

(1)逻辑结构:二维表

(2)几个概念:元组、分量、基数、属性(主属性、非主属性<非码属性>)、码(候选码、全码、主码)

候选码是一个属性或一个属性组

(3)笛卡尔积可表示为一个二维表,表中每行对应一个元组,每列对应一个域

笛卡尔积的某个子集才有实际含义

(4)关系也是一个二维表,不同列可以对应不同域,每列的名字对应一个属性

n关系的度,n目关系必有n个属性

    (5)三类关系

        ①基本关系

            性质:同质、不同列出自同个域、列、行顺序无所谓、任意两个元组候选码不同、分量必须取原子值

        ②查询表

        ③视图表

2.1.2关系模式

关系模式(静态的、稳定的)(型)是对关系(动态的、随时间不断变化的)(值)的描述

    R(U,D,DOM,F)

2.1.3关系数据库

型:关系数据库模式

值:关系模式在某一时刻对应的关系的集合

2.1.4关系模型的存储结构

2.2关系操作

2.2.1常用的关系操作:

(1)查询、数据更新;

    查询的表达能力是其中最主要部分

    选择、投影、并、差、笛卡尔积是5种基本操作

选择在关系R中选择满足给定条件的诸元组(行角度的运算)

投影在关系R中选择若干属性列组成新的关系(列的角度的运算)

连接又称θ 连接,从两个关系的笛卡尔积中选择属性间满足一定条件的元组

(2)关系操作的特点:集合操作方式:操作的对象和结果都是集合,一次一集合的方式

2.2.2语言分类

关系代数语言-》关系演算语言-》具有关系代数和关系演算双重特点的语言(SQL)

2.3关系的完整性

实体完整性和参照完整性:关系模型必须满足的完整性约束条件,称为关系的两个不变性

用户定义的完整性:应用领域需要遵循的约束条件,体现了具体领域中的语义约束

  1. 实体完整性

关系R的主属性A不能取空值

  1. 参照完整性

关系间的引用

外码F是R的一个或者一组属性,同时是S的主码

R为参照关系,S为被参照关系,R和S可以为同一关系

需要保证S的主码和R的外码定义在同一个(组)域

参照完整性规则

对于R中每个元组在F上的值必须为:

或者取空值;或者等于S中某个元组的主码值

当F也是R上的主码时不能取空值

  1. 用户定义的完整性

2.4关系代数

2.4.1传统的集合运算

交、并、差、广义笛卡尔积

从关系的水平方向即行的角度进行

2.4.2专门的关系运算

选择、投影、连接、除运算

不仅涉及行而且涉及列

比较运算符和逻辑运算符是用来辅助专门的关系运算符进行操作的

五种基本运算:并、差、笛卡尔积、投影、选择

连接:

(1)等值连接:从行的角度     

(2)自然连接:从行和列的角度(考虑到需要去掉重复的列)

数据库恢复技术

3.1事物

四个特性:ACID 原子性、一致性、隔离性、持续性

数据库的恢复:从错误状态恢复到某一已知的正确状态

故障的种类:

事物内部故障(事物撤销undo)、不需要用户干预

(1)反向扫描日志文件,查找该事务的更新操作

(2)对该事务的更新操作执行逆操作

(3)继续反向扫描

(4)知道读到此事物的开始标记

系统故障(不破坏数据库,撤销所有未完成的事物+重做所有已经提交的事物)、不需要用户干预

关键:找到未完成事物和已完成事物 前者应撤销,后者对应重做 前者逆向扫描,后者正向扫描

介质故障(硬故障,破坏数据库)、

重装数据库,恢复已经完成的事务

计算机病毒

恢复的基本原理:冗余

恢复实现技术:数据转储:静态转储、动态转储、海量转储、增量转储

日志文件:以记录为单位、以数据块为单位

作用:事物故障恢复、系统故障恢复、动态转储

一级封锁协议:修改的时候加锁读的时候不加锁

数据库设计

1.需求分析

2.概念结构设计:ER图,数据字典

3.逻辑结构设计:某种数据模型(关系型数据库)

4.物理结构设计:存储结构、存取方法

5.数据库实施阶段

6.数据库运行和维护阶段:性能监测、转储/恢复、数据库重组和重构

需求分析和概念设计独立于任何数据库管理系统

逻辑设计和物理设计与选用的DBMS有关

设计ER图中的冲突:属性冲突、命名冲突、结构冲突

属性冲突:

       (1)属性域冲突

       (2)属性取值单位冲突

命名冲突:

       (1)同名异义

       (2)异名同义

结构冲突:

       (1)同一对象在不同应用中具有不同的抽象

       (2)同一实体在不同分ER图中所包含的属性个数和属性排列次序不完全相同

       (3)实体之间的联系在不同局部视图中呈现不同的类型

数据库的安全性

安全性控制的一般方法:用户标识定义、存取控制、审计、数据加密、视图

并发控制的主要方法:封锁

数据库的完整性是指数据的正确性、相容性

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值