数据库原理第一章
第一章 数据库系统概述
1.1 数据库基本概念
1.1.1 什么是数据
数据(DATA)是描述事物的符号记录,是指利用物理符号记录下来的、可以鉴别的信息
例如:张三,男,26,北京,上海
但是出现问题 北京和上海对于张三有什么意义?
当我填上描述信息 如下观察:
现居地 | 户籍地 |
---|---|
北京 | 上海 |
通过上面分析我们发现:
数据是信息存在的一种形式,只有通过解释或处理的数据才能成为有用的信息
1.1.2 什么是数据库
数据库(DARABASE,DB) 是指长期存储在计算机的有组织的、可共享的数据集合
数据要按照一定的数据模型组织、描述和存储,具有较小的冗余度、较高的 数据独立性,系统易于扩展,并可以被多个用户分享。
数据库中存储的数据的三个基本特点
简答:永久存储、有组织、可共享
1.1.3 什数据库管理系统及其功能
数据库管理系统(DBMS)是专门用于建立和管理数据库的一套软件,介于应用程序和操作系统之间
数据库管理系统功能:
1)数据定义功能
2)数据操纵功能
3)数据运行管理功能
4)数据库的建立和维护功能
5)数据组织、存储和管理功能
6)其他功能 ----> 网络相关功能
1.1.4 数据库系统的构成
用户(程序员) 用户(数据库终端用户)
| |
| |
| |
--------应用程序-----------
| |
| |
| |
---数据库管理系统(DBMS)-----------数据库管理员(DBA)
|
|
|
数据库
1.2 数据库管理技术的发展
1.2.1 人工管理阶段
1)数据不保存
2)应用程序管理数据
3)数据面向应用程序
1.2.2 文件系统阶段
文件系统 保存数据 由文件系统 进行文件级别共享操作
1.2.3 数据库系统阶段
1)数据集成(主要目的)
2)数据共享性(高)
3)数据冗余(低)
4)数据一致性
5)数据独立性(高)
6)实施统一管理与控制
7)减少应用程序开发与维护的工作量
解释1 数据独立性
数据定义与使用数据的应用程序分离称为数据独立
解释2 统一管理与控制、程序开发与维护
主要包括:数据的安全性、完整性并发控制于故障恢复等,即数据库保护
1.3 数据库系统的结构
1.3.1 数据库系统的结构分类
|-模式
|---内部系统结构,采用三级模式---|--内模式
| |-外模式
从DBA的视角|
| |--集中式结构
|---外部系统结构---|--分布式结构
|--并行结构
|---- 客户/服务器(C/S)结构 例如APP
从数据库应用的用户的视角---|
|---- 浏览器/服务器(B/S)结构 例如网页
1.3.2 数据库系统的三级模式结构
应用A 应用B 应用C 应用D 应用E
| | | | |
| | | | |
| | | | |
外模式1 外模式2 外模式3
| | |
---------------|-------------|
模式
|
|
内模式
|
|
数据库
外模式:也称为子模式或用户模式 --》用户级相关外模式
模式:也称为概念模式或逻辑模式 --》概念级相关外模式
内模式:也称存储模式 --》物理级相关外模式
名称 | 别称 | 视图类型 |
---|---|---|
模式 | 概念模式、逻辑模式 | 概念视图 |
外模式 | 子模式、用户模式 | 数据视图、用户视图 |
内模式 | 存储模式 | 内部视图,存储试图 |
备注:视图就是你眼中的数据,能让用户看懂的叫视图
模式是数据库的核心,也是数据库设计的关键
三级模式结构的两层映像与数据独立性
所谓映像,就是一种对应规则,它指出映像双方是如何进行转换得到
模式/内模式映像
保证了数据与程序的物理独立性
外模式/模式映像
保证了数据与程序的逻辑独立性
1.3.3 客户/服务器(C/S)结构
客户服务器结构(C/S)中,客户端、前台或表示层:主要完成与数据库使用者的交互任务;服务器、后台或数据层:主要负责数据管理
《-------》
表示层 数据层
《-------》
单机方式 一台电脑上
网络方式 多台设备联机
1.3.4 浏览器/服务器(B/S)结构
浏览器服务器(B/S)结构,是一种基于WEB应用的客户服务器结构,也称三层客户服务器结构
三层:表示层、处理层、数据层
《-------》 《-------》
表示层 处理层 数据层
《-------》 《-------》
1.4 数据模型
1.4.1 什么是模型
模型是现实世界特征的模拟和抽象表达
数据模型是对现实世界数据特征的抽象,描述的是数据的共性内容
例如:姓名 、性别、职业、省份证号、等等之类的 共通的内容
当然在一定程序上具有一定的意义更合适更好一些
1.4.2 数据的特征
数据的特征分为静态特征和动态特征
| 数据的基本结构 例如 队列、二叉树、表
|
静态特征| 数据间的联系 例如 身高和体重 越高相对越重
|
| 数据取值范围 例如 性别
在一定程度上静态特征上是不会变的
动态特征:指对数据可以进行符合一定规则的操作,例如 18岁过了生日就19岁
1.4.3 数据模型组成要素
数据结构:描述的是系统的静态特征,即数据对象的数据类型、内容、属性以及数据对象之间的联系
数据操作:描述的是系统的动态特征
数据约束:描述数据结构中数据间的语法和语义关联,在此环境中是一种特例约束,
1.4.4 数据模型的分类
数据模型是模型化数据和信息的工具,也是数据库系统的核心和基础
满足三点:比较真实的模拟现实世界,容易为人们理解,便于在计算机上实现
现实世界
|
|(抽象)
|
概念模型(信息世界)
|
|(转换、组织)
|
逻辑模型和物理模型(机器世界)
1.4.5 什么是概念层数据模型
概念层是数据抽象级别的最高层。概念层数据模型,也称为数据的概念模型或信息模型,这类模型主要用于数据库的设计阶段
例如、E-R图的设计 组织人员架构
1.4.6 信息世界涉及的基本概念
名称 | 概念 | 举例 |
---|---|---|
实体(Entity) | 把每一类数据对象的个体称为实体 | 学生 |
属性(Attribute) | 事物的性质与事物之间关系 | (学号,性别,出生年月) |
实体型(Entity Type) | 具有相同属性的实体必然具有共同的特征和性质 | 学生(学号,性别,出生年月) |
实体集(Entity Set) | 实体集是具有相同类型及相同属性的实体的集合 | 一群学生 |
码或键(Key) | 唯一标识该实体的属性 | 学号 |
域(Domain) | 取值范围 | 性别属性 |
联系(Relationship) | 属性或实体之间有一定的联系 | 父子,师生 |
数据模型中有型和值两个概念
例如:表头是型,数据为值
1.4.7 概念模型的表示方法
E-R图:一般实体型用长方形,属性用椭圆,联系用菱形
1.4.8 什么是逻辑层数据模型
逻辑层是数据抽象级别的中间层,逻辑层数据模型,也称为数据的逻辑模型
任何DBMS都是基于某种逻辑数据模型
1.4.9 逻辑模型的类型
层次模式:
是最早使用的一种数据模型
有且仅有一个结点没有父结点,称作根结点
有其他结点有且仅有一个父结点
网状模型:
以网状结构表示实体与实体间的联系
允许结点有多于一个父结点
可以有一个以上的结点没有父结点
关系模型:
用二维表结构来表示实体间的联系
优点:
建立在严格的数学概念的基础上
概念单一
存储路径对用户透明,有更高的数据独立性,更好的安全保密性
面向对象模型: 面向对象方法和数据库
即是概念模型又是逻辑模型
表达能力丰富,对象可复用、维护方便
1.4.10 物理层数据模型
物理层数据模型,也称为物理模型,描述数据在存储介质上的组织结构,是逻辑模型的物理基础;
是数据库最底层的抽象;
设计目标是提高数据库性能和有效利用存储空间。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2020-08-04 网络与并发之多线程与多进程
2020-08-04 网络与并发(四)