数据库学习笔记之概论
1 数据库概念
1.1 基本概念
- 数据:描述事物的符号记录
- 数据库:概括地讲,数据库数据具有永久存储、有组织和可共享的三个基本特点;严格地讲,数据库是长期储存在计算机内、有组织的、可共享的大量数据的集合
- 数据库中的数据按一定的数据模型组织描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享
- 数据库管理系统:是位于用户和操作系统之间的一层数据管理软件,和操作系統一样是计算机的基础软件
- 主要功能
- 数据定义功能
- 数据组织、存储和管理
- 数据操纵功能
- 数据库的事务管理和运行管理
- 数据库的建立和维护功能
- 通信功能、数据转换功能、互访和互操作功能等
- 数据库系统:是由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统
1.2 发展阶段
- 人工管理阶段:数据不保存、不共享,不具有独立性
- 文件系统阶段:可保存,但共享性差,冗余度大,独立性差
- 数据库管理系统:数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段
- 数据独立性高
- 物理独立性:是指用户的应用程序与数据库中数据的物理存储是相互独立的
- 逻辑独立性:是指用户的应用程序与数据库的逻辑结构是相互独立的
- 数据由数据库管理系统统一管理和控制
- 数据独立性高
2 数据模型
2.1 概念模型
- 定义:也称信息模型,它是按用户观点来对数据和信息建模,主要用于数据库设计
- 基本概念
- 实体:客观存在共可相互区别的事物
- 属性:实体所具有的某一特性
- 码:唯一标识实体的属性
- 实体型:用实体名及其属性集合来抽象和刻画同类实体
- 实体集:同一类型实体的集合
- 联系:不同实体集之间的联系
- 实体之间的联系有一对一、一对多和多对多等多种联系
- 表示方法
- 实体 — 联系方法
- 用 E — R 图来描述现实世界的概念模型,E — R 方法也称为 E— R 模型
2.2 逻辑模型
-
定义:它是按计算机系统的观点对数据建模,主要用于数据库管理系统的实现
-
分类
-
层次模型
-
有且只有一个结点没有双亲,该结点称之为根节点
-
根节点以外的其他节点,有且还有一个双亲结点
-
-
网状模型
-
允许一个以上的节点无双亲
-
一个节点可以有一个或者多个双亲
-
-
关系模型
-
关系:一个关系对应通常说的一张表
-
元组:表中的一行
-
属性:表中的一列
-
码:也称码键,表中的某个属性组
-
域:是一组具有相同数据类型的值的集合
-
分量:元组中的一个属性
-
-
2.3 物理模型
- 定义:是对数据最底层的抽象,它描述数据在系统内部的表示方法和存取方法,或在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的
- 联系
- 实体之间的联系通常是指不同实体集之间的联系
- 实体之间的联系有一对一、一对多和多对多等多种联系
- 实体内部的联系通常是指实体各属性之间的联系
2.4 E — R 图
-
E - R 图分为实体、属性、关系三个核心部分
-
实体用长方形表示,属性用椭圆形表示,关系用菱形表示
3 三级模式两级映像
-
模式数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及型的描述,不涉及具体的值
-
一个具体值称为模式的一个实例
-
模式是相对稳定的,实例是相对变动的
-
三级模式
- 外模式:也称子模式或用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示
- 模式:也称为逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图
- 内模式:也称存储模式,一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式
-
二级映像
- 外模式/模式映像:当模式改变时,由数据库管理员对各个外模式/模式映像作相应改变,可以使外模式保持不变,应用程序不必修改,保证了数据与程序的逻辑独立性
- 模式/内模式映像:当数据库的存储结构改变时,有数据库管理员对模式/内模式作相应改变,可以使模式保持不变,从而应用程序也不用改变,保证了数据与程序的物理独立性
4 数据库系统组成
- 硬件平台及数据库:足够大内存、磁盘或磁盘阵列等设备,较高的通道能力
- 软件
- 数据库管理系统
- 支持数据库管理系统运行的操作系统
- 具有与数据库接口的高级语言及其编译系统
- 以数据库管理系统为核心的应用开发工具
- 为特定应用环境开发的数据库应用系统
- 人员
- 数据库管理员
- 系统分析员
- 数据库设计人员
- 应用程序员
- 最终用户
- 数据库管理员职责
- 决定数据库中的信息内容和结构
- 决定数据库的存储结构和存取策略
- 定义数据的安全性要求和完整性约束条件
- 监控数据库的使用和运行
- 数据库的改进和重组、重构
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!