1,数据库系统包括以下几个方面:
数据库(DB)、数据库管理系统(DBMS为建立、使用和维护数据库而配置的通用软件系统,是整个数据库系统的核心)、数据库应用、数据库管理员(DBA)、计算机基本系统
2,数据库中的数据类型
- 结构化数据:关系数据库中的数据
- 非结构化数据:图片,视频,语音等
- 半结构化数据:位于上面两者之间,比如web数据、XML数据等
3,数据库系统的特点:整体数据结构化、数据共享性高,冗余性低,由DBMS统一管理控制,数据的独立性高(物理独立性:数据库的物理磁盘换位置,应用程序不需改变;逻辑独立性:数据库的逻辑结构发生变化,用户的应用程序也不需要改变)
4,DBMS的作用
DBMS支持DDL(数据定义语言),DML(数据控制语言),
- 数据的安全性(Security)保护
保护数据,以防止不合法的使用造成的数据的泄密和破坏。防止非法实体进入数据库,以防止数据向未授权实体泄露,或被未授权实体所修改。防止合法用户越权使用数据库中数据,或者说,防止合法用户在获取信息时得到权限以外的信息。
- 数据的完整性(Integrity)检查
一个完善的完整性控制机制应该允许用户定义各类完整性约束条件 。将数据控制在有效的范围内,或保证数据之间满足一定的关系。检查用户发出的操作请求是否违背了完整性约束条件。如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性比如 拒绝该操作。
- 并发(Concurrency)控制
对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。
- 数据库恢复(Recovery)
将数据库从错误状态恢复到某一已知的正确状态。
5,三类数据模型
- 概念模型
也称信息模型,它是按用户的观点对数据和信息建模,用于数据库概念设计和建模
- 逻辑模型
也称数据模型(狭义) ,它是按计算机系统的观点对数据建模,主要包括网状模型、层次模型、关系模型、面向对象模型等,用于数据库系统实现。
- 物理模型
也称存储模型,它是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。
6,数据模型三要素:数据结构、数据操作、完整性约束
7,数据模型根据描述方法的分类:基于记录的模型(层次模型、网状模型、关系模型),基于对象的模型(ER模型)
8,ER模型(Entity-RelationShip)
客观世界是由一组称作实体的基本对象和这些对象之间的联系构成的,ER图中实体用矩形表示,属性用椭圆表示,联系用菱形表示。联系本身也是一种实体型,也可以有属性。
- 实体(Entity) 客观存在并可相互区别的事物称为实体,可以是具体的人、事、物或抽象的概念
- 联系(Relationship)现实世界中事物内部以及事物之间的联系在信息世界中反映为实体内部的联系和实体之间的联系
9,两个实体之间的联系
10,两个实体以上的实体间的联系
若实体集E1,E2,...,En存在联系,对于实体集Ej(j=1,2,...,i-1,i+1,...,n)中的给定实体,最多只和Ei中的一个实体相联系,则我们说Ei与E1,E2,...,Ei-1,Ei+1,...,En之间的联系是一对多的。其他的定义相似。
11,单个实体内的联系
12,经典的逻辑模型
各种经典逻辑数据模型之间的区别在于数据之间联系的表示方式不同。
- 层次模型(树)
层次数据库系统的典型代表是IBM公司的IMS(Information Management System)数据库管理系统,层次模型用树形结构来表示各类实体以及实体间的联系 。
- 网状模型(图)
用图形结构来表示各类实体以及实体间的联系 。是满足下面条件的基本层次联系的集合:1. 允许一个以上的结点无双亲;2. 一个结点可以有多于一个的双亲;3.允许两个结点之间有多种关系(称为复合关系) 特点:取消了层次数据模型数据结构的限制,是对层次数据模型的扩展,更具有普遍性适用
- 关系模型(表)
目前数据库软件厂商推出的DBMS几乎都支持关系模型。一个关系对应通常说的一张表。需要注意的是关系的每一个分量必须是一个不可分的数据项, 不允许“表中套表”。
13,模式的分级
为了提高数据的物理独立性和逻辑独立性,使数据库的用户观点,即用户看到的数据库,与数据库的物理方面,即实际存储的数据库区分开来,数据库系统的模式是分级的。
三级模式分模式、外模式、内模式。
模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
外模式是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据逻辑表示。外模式通常是模式的子集,一个数据库可以有多个外模式。
内模式是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。一个数据库只有一个内模式。
14,两层映射
两层映射保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
数据库系统在三级模式之间提供了两层映射:外模式/模式映象;模式/内模式映射。
- 外模式/模式映象
对于每一个外模式,数据库系统都有一个外模式/模式映射,它定义了该外模式与模式之间的对应关系。当模式改变时,对各个外模式/模式的映射作相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
- 模式/内模式映射
定义数据逻辑结构与存储结构之间的对应关系。存储结构改变时,修改模式/内模式映象,使模式保持不变,从而应用程序可以保持不变,称为数据的物理独立性。