这是我学习数据库时候的笔记,都是非常简单,非常基础的有关数据库的知识,最近整理一下,希望大家不要蛋蛋我啊,呵呵
数据库学习笔记(一)
——绪论及基本概念
一, 数据:描述事物的符号记录称为数据。
二, 数据库:指长期存储在计算机内的、有组织、可共享的数据集合。
三, 数据库管理系统:数据管理的软件,主要以下功能:
1, 数据定义:DDL(Data Definition Language)。
2, 数据操纵:DML (Data Manipulation Language)。
3, 数据库的运行管理
4, 数据库的建立和维护功能
5, 数据库的接口通讯
四, 数据库系统:在计算机系统中引入数据库后的系统,由以下部分组成:
1, 数据库
2, 数据库管理工具
3, 应用开发工具
4, 应用系统
5, 数据库管理员和数据库用户
五, 数据库管理技术的发展
1, 人工管理阶段:
特点:数据不保存,应用程序管理数据,数据不共享,数据不具有独立性。
2, 文件系统管理:
特点:数据可以长期保存,由文件系统管理数据,数据共享性差,冗余度大,数据独立性差。
3, 数据库系统阶段:
特点:1,数据结构化
2,数据的共享性高,冗余度低,易扩充
3,数据的独立性高
4,数据由DBMS统一管理和控制。
DBMS主要提供以下几个方面的数据控制:
1, 数据的安全性保护
2, 数据的完整性检查
3, 并发控制(多用户使用的协调)
4, 数据库的恢复
六, 数据模型
1, 数据模型的概念:抽象、表示和处理现实世界中的数据和信息,即现实的模拟。
2, 数据模型必须满足的要求:
1,能比较真实的模拟现实世界;
2,容易为人理解
3,便于在计算机上实现
3, 数据模型的层次:
1,概念模型:也称信息模型,按用户的观点来对数据和信息建模,主要用于数据库设计:
1, 主要功能:概念模型用于信息世界的建模。概念模型不依赖于某一个DBMS支持的数据模型。概念模型可以转换为计算机上某一DBMS支持的特定数据模型。
2, 主要特点:
(1)具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识。
(2)应该简单、清晰、易于用户理解,是用户与数据库设计人员之间进行交流的语言。
3, 概念模型的基本概念:
(1) 实体(Entity):客观存在并可相互区别的事物。
(2) 属性(Attribute):实体所具有的某一特性。
(3) 码(Key):唯一标识实体的属性集。
(4) 域(Domain):属性的取值范围。
(5) 实体型(Entity Type)相同属性的实体具有的共同的特征。
(6) 实体集(Entity Set):同型实体的集合称为实体集。
(7) 联系(Relationship)实体之间或实体内部的联系,以下几类:
i. 一对一联系
ii. 一对多联系
iii. 多对多联系(m:n)
iv. 自联系
4,概念模型的表示方法(E-R图):
1, 实体型:用矩形表示
2, 属性:用椭圆表示
3, 联系:用菱形表示。
2,数据模型:主要包括网状模型、曾是模型、关系模型,是按计算机系统的观点对数据建模,主要用于DBMS的实现。
1, 数据模型三要素:
1, 数据结构:
数据结构用于描述系统的静态特性。它是所研究的对象类型的集合。这些对象是数据库的组成部分,有两类,一类研究与数据类型、内容、性质有关的对象。例如关系模型中的域、属性、关系等;另一类研究与数据之间联系有关的对象。
2, 数据操作:反映系统的动态属性。
3, 数据的约束条件:
数据的约束条件是一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和储存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。此外,数据模型还应该提供定义完整性约束条件的机制。
3,数据模型的分类:
1, 层次模型(Hierarchical Model):
1,定义:
在数据库定义中满足下面两个条件的基本层次联系的集合为层次模型:a.有且只有一个结点没有双亲结点(根结点)
b.以外的其他结点有且只有一个双亲结点。
2,特点:
任何一个给定的记录值只有按其路径查看时,才能显出它的全部意义,没有一个子女记录值能够脱离双亲记录值而独立存在。
3,层次数据模型的约束条件:
进行插入、删除、更新操作时要满足层次模型的完整性约束条件。进行插入操作时,如果没有相应的双亲结点值就不能插入子女结点值。 进行删除操作时,如果删除双亲结点值,则相应的子女结点值也被同时删除。进行更新操作时,应更新所有相应记录,以保证数据的一致性。
4,层次模型的连接结构:
1. 邻接法:按照层次树前序穿越的顺序把所有记录值依次邻接存放,即通过物理空间的位置相邻来实现层次顺序。
2.链接法:用指引元来反映数据之间的层次联系。
4, 层次模型的优缺点:
优点:
1.数据模型比较简单,操作简单。
2.对于实体间联系是固定的,且预先定义好的应用系统,性能较高。
3.提供良好的完整性支持。
缺点:
1.不适合于表示非层次性的联系。
2.对插入和删除操作的限制比较多。
3.查询子女结点必须通过双亲结点。
4.由于结构严密,层次命令趋于程序化。
2, 网状模型(Network Model)
3, 面向对象模型(Object Oriented Model)
4, 关系模型(Realational Model)
(1) 相关概念:
i. 关系:一张二维表
ii. 元组(Tuple):表中的一行为一个元组。
iii. 属性(Attribute):表中的一列为一个属性。
iv. 主码(Key):表中的某个属性组,可以确定一个元组。
v. 域(Domain):属性取值范围。
vi. 分量:元组中的一个属性值。
vii. 关系模式:对关系的描述,一般表示为:
关系名(属性1,属性2,等等)
(2) 优缺点:
优点:
1)关系模型是建立在严格的数学概念的基础上的。
2)无论实体还是实体之间的联系都用关系来表示。对数据的检索结果也是关系(即表),因此 概念单一,其数据结构简单、清晰。
3)关系模型的存取路径对用户透明,从而具有更高的数据独立性,更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。
缺点:
由于存取路径对用户透明,查询效率往往不如非关系数据模型。因此为了提高性能,必须对用户的查询请求进行优化,增加了开发数据库管理系统的负担。
未完待续
小康
2004年2月21日星期六
E-mail:xiaokang1949@hotmail.com