一、数据库系统概述
D(Data)数据
DB(DataBase)数据库
DBMS(DataBase Management System)数据库管理系统
DBS(DataBase Sysem)数据库系统
二、数据库的发展
1.人工管理阶段
2.文件系统阶段
3.数据库系统阶段
三、数据库系统的特点
1.数据结构化
2.数据的共享性高,冗余度低,易扩充
3.数据独立性高
物理独立性:用户的应用程序与储存在磁盘上的数据库中的数据时相互独立的。
逻辑独立性:用户的应用程序与数据库的整体逻辑结构是独立的。
4.数据由DBMS统一管理和控制
四、数据模型
数据(data)是描述事物的符号记录。模型(Model)是现实世界的抽象。数据模型(Data Model)是数据特征的抽象,是数据库管理的教学形式框架。数据库系统中用以提供信息表示和操作手段的形式构架。(百度百科)
组成要素:
1.数据结构(层次结构、网状结构、关系结构、面向对象结构)
关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据。目前主流的关系数据库有oracle、SQL、access、db2、sqlserver,sybase等。
2.数据操作(查、插、删、改等)
3.数据完整性约束
五、概念模型
概念模型是对真实世界中问题域内的事物的描述,不是对软件设计的描述。概念的描述包括:记号、内涵、外延,其中记号和内涵(视图)是其最具实际意义的。
信息世界中的基本概念:
1.实体——客观存在可以相互识别的事物
2.属性——实体所具有的某一特性
3.码——唯一标识实体的属性集
4.域——属性的取值范围,是具有相同数据类型的数据集合
5.实体型——具有想同属性的实体必然有相同的特征和属性
例如:教师(教师号, 姓名, 年龄, 职称)
6.实体集——相同实体的集合
7.联系——事物内部或事物之间的关联
联系的种类:
1.一对一
2.一对多
3.多对多
六、概念模型的表示(E-R图)
E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
![]()
E-R方法是“实体-联系方法”(Entity-Relationship Approach)的简称。它是描述现实世界概念结构模型的有效方法。是表示概念模型的一种方式,用矩形表示实体型,矩
形框内写明实体名;用椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来;用菱形表示实体型之间的联系,在菱形框内写明联系名,并用无向边分别与有关实体型连接
起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。
构图要素
实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体
;在E-R图中用
矩形表示,矩形框内写明实体名;比如学生
张三丰、
学生
李寻欢都是实体。如果是
弱实体的话,在矩形外面再套实线矩形。
属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、
都是属性。如果是多值属性的话,再
椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。
联系(Relationship):联系也称关系,信息世界中反映实体内部或实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同
实体
集之间的联系。在E-R图中用
菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。比如老师给学生
授课存在授课关系,学生选课存在选课关系。如果是弱实体的联系则在菱形外面再套菱形。
[2]
联系可分为以下 3 种类型:
(1) 一对一联系(1 ∶1)
例如,一个部门有一个经理,而每个经理只在一个部门任职,则部门与经理的联系是一对一的。
(2) 一对多联系(1 ∶N)
例如,某校教师与课程之间存在一对多的联系“教”,即每位教师可以教多门课程,但是每门课程只能由一位教师来教
(3) 多对多联系(M ∶N)
例如,图1表示学生与课程间的联系(“学 ”)是多对多的,即一个学生可以学多门课程,而每门课程可以有多个学生来学。联系也可能有属性。例如,学生“ 学” 某门课程所取得的成
绩,既不是学生的属性也不是课程的属性。由于“ 成绩” 既依赖于某名特定的学生又依赖于某门特定的课程,所以它是学生与课程之间的联系“ 学”的属性。
作图步骤:
⑴确定所有的实体集合
⑵选择实体集应包含的属性
⑶确定实体集之间的联系
⑷确定实体集的
关键字,用下划线在属性上表明关键字的属性组合(即确定PK)
⑸确定联系的类型,在用线将表示联系的菱形框联系到实体集时,在线旁注明是1或n(多)来表示联系的类型
七、关系模型
关系实际上就是关系模式在某一时刻的状态或内容。也就是说,关系模式是型,关系是它的值。关系模式是静态的、稳定的,而关系是动态的、随时间不断变化的,因为关系操
作在不断地更新着数据库中的数据。但在实际当中,常常把关系模式和关系统称为关系,读者可以从上下文中加以区别。
定义
关系模型:用二维表的形式表示实体和实体间联系的数据模型
关系模式
关系模式可以形式化地表示为R(U,D,dom,F)
R——关系名
U——组成该关系的属性名集合
D——属性组U中属性所来自的域
dom——属性向域的映象集合
F——属性间的数据依赖关系集合。
1.关系模型的数据结构:
![]()
关系模型中数据的逻辑结构是一张二维表,它由行和列组成。每一行成为一个元组,没一列成为一个属性(字段)。
关系:一个关系对应一张二维表
元组:一行
属性:一列
主码:可以唯一标示一个元组的属性集合
域:属性的取值范围
分量:元组中的一个属性值
关系模式:表现为关系名和属性的集合,一般表示为 关系名(属性1, 属性2,……属性N)
2.关系模型的数据操作与完整性约束条件
约束是用来确保数据的准确性和一致性。数据的完整性就是对数据的准确性和一致性的一种保证。
数据完整性(Data Integrity)是指数据的精确(Accuracy)和可靠性(Reliability)。
分为以下四类:
1) 实体完整性:规定表的每一行在表中是惟一的实体。
2) 域完整性:是指表中的列必须满足某种特定的
数据类型约束,其中约束又包括取值范围、精度等规定。
3) 参照完整性:是指两个表的
主关键字和外关键字的数据应一致,保证了表之间的数据的一致性,防止了数据丢失或无意义的数据在数据库中扩散。
4) 用户定义的完整性:不同的
关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件。用户定义的完整性即是针对某个特定关系数据库的约束条件 ,它反映某一具体应用必须满足的语义要求。
3.关系模型的储存结构
在关系模型中,实体和实体之间的联系都用关系即二维表来表示。
八、数据库系统结构
数据库系统的三级模式结构
1.外模式(External Schema)
外模式也称子模式(SubSchema)或用户模式,是三级模式的最外层,他是数据库用户能够看到和使用的局部数据的逻辑结构和特征的描述。
一个数据库可以有多个外模式。
2.模式(Schema)
模式又称概念模式,也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图,是数据视图的全部。
一个数据库只能有一个模式。
3.内模式(Internal Schema)
内模式也称储存模式,他是数据物理结构和储存方式的描述,是数据在数据库中内部的表示方式。
一个数据库只有一个内模式。
数据库的二级映像与数据的独立性
1.外模式/模式映像
当模式改变时,由数据库管理员对各个外模式/模式映像做相应的改变,可以保持外模式不变,从而应用程序不需要改变,这称为逻辑独立性。
2.模式/内模式映像
当内模式改变时,由数据库管理员对各个模式/内模式映像做相应的改变,可以保持模式不变,从而应用程序不需要改变,这称为物理独立性。
九、数据库系统的组成
1.硬件平台
2.数据库
3.软件
(1)支持DBMS运行的操作系统
(2)DBMS
(3)具有与数据库接口的高级语言及其编译系统
(4)以DBMS为核心的应用开发工具,为特定的应用环境开发的数据库应用程序
3.用户
(1)数据管理员DBA(DataBase Administrator)
(2)系统分析员和数据库设计人员
(3)应用程序员
(4)用户