目录
(三)数据库管理系统(DataBase Management System,DBMS)
(四)数据库系统(DataBasec System,DBS)
一、数据、数据库、数据库管理系统、数据库系统基本概念
(一)数据(Data)
- 数据是数据库中存储的基本对象
- 定义:描述实物的符号记录称为数据。描述实物的符号可以是数字,也可以是文字、图形、图像、声音、语言等,数据有多重表现形式,它们都可以经过数字化后存入计算机
(二)数据库(DataBase,简称DB)
- 数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合
- 数据库具有永久存储、有组织和可共享三个基本特点
(三)数据库管理系统(DataBase Management System,DBMS)
1. 数据库管理系统的主要功能包括
- 数据定义功能:DBMS提供数据定义语言(Data Definition Language,DDL),用户通过它可以方便地对数据库中的对象进行定义
- 数据组织、存储和管理:DBMS要分类组织、存储和管理各种数据,包括数据字典、用户数据、数据的存取路径等。
- 数据操纵功能:DBMS提-供数据操纵语言(Data Manipulation Language,DML),用户可以使用DML操纵数据,实现对数据库的基本操作,如查询、插入、删除和修改等
- 数据库的事务管理和运行管理:数据库在建立、运用和维护时由数据管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用以及发生故障后的系统恢复
- 数据库建立和维护功能:数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。
(四)数据库系统(DataBasec System,DBS)
- 数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成
二、数据管理技术的产生和发展
- 数据库管理技术经历了人工管理、文件系统、数据库系统3个阶段
(一)人工管理阶段
1. 特点
- 数据不保存
- 应用程序管理数据
- 数据不共享
- 数据不具有独立性
2. 缺点
- 数据的逻辑结构或物理结构发生变化后,必须对应用程序做相应的修改,这就加重了程序员的负担
(二)文件系统阶段(例如word软件)
1. 特点
- 数据可以长期保存
- 由文件系统管理数据
2. 缺点
- 数据共享性差,冗余度大(冗余也指多余)
- 数据独立性差
(三)数据库系统阶段
1. 特点
- 数据结构化
- 数据的共享性高,冗余度低,易扩充
- 数据独立性高(也指不与应用程序相绑定)
- 数据由DBMS统一管理和控制
(四)总结
三、数据模型
(一)基本概念
- 数据模型(Data Model)也是一种模型,它是对现实世界数据特征的抽象。数据模型就是现实世界的模拟
(二)两类数据模型
1. 数据模型应满足三方面要求
- 能比较真实地模拟现实世界
- 容易为人所理解
- 便于在计算机上实现
2. 第一类概念模型(Conceptual Model)
- 概念模型也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计
3. 第二类是逻辑模型和物理模型
- 逻辑模型主要包括层次模型(Hierarchical Model)、网状模型(Network Model)、关系模型(Relational Model)、面向对象模型(0bject 0riented Model)和对象关系模型(0bject Relational Model)等。它是按照计算机系统的观点对数据建模,主要用于DBMS的实现
- 物理模型是对数据最低层的抽象,它描述数据在系统内部的表示方式和存取方式,在磁盘或磁带上的存储方式和存取方式,是面向计算机系统的。
(三)数据模型的组成要素
- 数据模型通常由于数据结构、数据操作和完整性约束三部分组成
1. 数据结构
数据结构描述数据库的组成对象以及对象之间的联系。数据结构是所描述的对象类型的集合,是对系统静态特性的描述
2. 数据操作
数据库主要查询和更新(包括插入、删除、修改)两大类型操作。数据操作是对系统动态特性的描述
3. 数据的完整性约束条件
- 数据的完整性约束条件是一组完整性规则
例如:在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件
例如:在某大学的数据库中规定教授的退休年龄是65周岁,男职工的退休年龄是60周岁,女职工的退休年龄是55周岁等
(四)概念模型
1. 概念模型是现实世界到机器世界的一个中间层次,表现为:
- 概念模型用于信息世界的建模
- 现实世界到信息世界的第一层抽象
- 数据库设计人员进行数据库设计的有力工具
- 数据库设计人员和用户之间进行交流的语言
2. 概念模型要求
- 具有较强的语义表达能力
- 能够方便、直接地表达应用中的各种语义知识
- 简单、清晰、易于用户理解
四、信息世界中的基本概念
(一)实体(Entity)
- 客观存在并可相互区别的事务称为实体。实体可以的具体的人、事、物、也可以是抽象的概念或联系
- 例如:一个职工、一个学生、一个部门、一门课,学生的一次选课等都是实体
(二)属性(Attribute)
- 实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画
- 例如:学生实体可以由学号、姓名、性别、出生日期、所在院系、入学时间等属性组成。(123456,张三,男,2002-12-26,计算机系,2021)这些属性组合起来表征了一个学生
(三)码(Key)
- 唯一标识实体属性集称为码
- 例如:学号是学生实体的码
(四)域(Domain)
- 域是一组具有相同数据类型的值的集合。属性的取值范围来自某个域
- 例如:学号的域为8位整数,学生年龄的域为整数,性别的域为(男,女)
(五)实体型(Entity Type)
- 具有相同属性的实体必然具有共同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。
- 例如:学生(学号、姓名、性别、出生年月、所在院系、入学时间)就是一个实体型
(六)实体集
- 同一类型实体的集合称为实体集
- 例如:全体学生就是一个实体集
(七)联系(Relationship)
- 在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体(型)内部的联系和实体(型)之间的联系
- 实体内部的联系通常是指组成实体的各属性之间的联系,实体之间的联系通常是指不同实体集之间的联系
五、两个实体型之间的联系
(一)一对一联系(1:1)
- 如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A和实体集B具有一对一联系,记为1:1
- 例如:学校里面,一个班级只有一个正班长,而一个班长只在一个班中任职,则班级与班长之间具有一对一联系
(二)一对多联系(1:n)
- 如果对于实体集A中的每一个实体,实体集B中有n个实体(n>=0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有1对多联系,记为1:n
- 例如:一个班级中有若干名学生,而每个学生只在一个班级中学习,则班级与学生之间具有一对多联系
(三)多对多联系(m:n)
- 如果对于实体集A中每一个实体,实体集B中有n个实体(n>=0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m>=0)与之联系,则称实体集A与实体集B具有多对多联系,记为m:n
- 实际上,一对一联系是一对多联系的特例
- 例如:一门课程同时若干个学生选修,而其一个学生可以同时选修多门课程,则课程理学生之间具有多对多联系 ,其中课程对学生是1:n,学生对课程是1:m
六、单个实体型内的联系
- 同一个实体集内的各实体之间也可以存在一对一、一对多、多对多的联系
- 例如:职工实体型内部具有领导与被领导的联系 ,即某一个职工(干部)“领导”若干名职工,而一个职工仅被另外一个职工直接领导,因此这是一对多的联系
七、概念模型的一种表示方法:实体---联系图(E-R图)
(一)基本概念
- E-R图提供了实体型、属性和联系的方法
- 实体型:用矩形表示,矩形框内写明实体名
- 属性:用椭圆形表示,并且无向边将其相应的实体型连接起来
- 例如:学生实体具有学号、姓名、性别、出生年月、入学时间等
- 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1:1,1:n,m:n)
- 注意:如果一个联系具有属性,则这些属性也要用无向边于该联系连接起来
- 例如:用“供应量”来描述联系“供应”的属性,表示某供应商供应了多少数量的零件给某个项目。那么这3个实体及其之间联系的E-R图如下
(二)一个实例
- 用E-R图来表示某个工厂物资管理的概念模型
1. 物资管理涉及的实体
- 仓库属性有仓库号、面积、电话号码
- 零件属性有零件号、名称、规格、单价、描述
- 供应商是属性有供应商号、姓名、地址、电话号码、账号
- 项目属性有项目号、预算、开工日期
- 职工属性有职工号、姓名、年龄、职称
2. 实体之间的联系如下
- 一个仓库可以存放多种零件,一个零件可以存放多个仓库中,因此仓库和零件具有多对多的联系。用库存量来表示某种零件在某个仓库中的数量
- 一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,因此仓库和职工之间是一对多的联系
- 职工之间具有领导---被领导关系。即仓库主任领导若干保管员,因此职工实体集中具有一对多的联系
- 供应商、项目和零件三者之间具有多对多的联系。即一个供应商可以供给若干项目多种零件,每个项目可以使用不同供应商的供应的零件,每种零件可由不同供应商供给