数据库系统原理 浙江大学 陈岭https://www.bilibili.com/video/BV1eW411S7b3
花了一周学习了一下,感觉还挺有帮助
1. 数据库系统的基本概念
数据库:长期储存在计算机内,有组织的,可共享的数据集合
数据库管理系统DBMS:数据库+一组用以访问、更新和管理这些数据的程序
DBMS主要特征:
- 数据访问的高效和可扩展性
- 缩短应用开发时间
- 数据独立性(物理数据独立性/逻辑数据独立性)
- 数据完整性和安全性
- 并发访问和鲁棒性(恢复)
文件处理系统中储存组织信息的主要弊端
- 数据冗余和不一致
- 数据访问困难
- 数据孤立
- 数据完整性
- 原子性问题
- 并发访问异常
- 安全性问题
2. 数据库模式及数据类型
数据抽象
- 物理层:描述数据实际上是怎样存储的
- 逻辑层:描述数据库中存储什么数据,以及这些数据间存在什么关系
- 视图层:仅提供应用需要的数据
模式和实例
- 模式:数据库的总体设计
类似于程序中变量的类型信息- 物理模式:在物理层描述数据库的设计
- 逻辑模式:在逻辑层描述数据库的设计
- 实例:特定时刻存储在数据库中的信息的集合
类似于程序中变量的值
物理独立性:修改物理结构而不需要改变逻辑结构
- 应用程序依赖于逻辑结构,可以独立于数据的结构和存储
- 使用DBMS的重要好处
- 不管物理是用磁盘还是硬盘存放,DBMS系统自动完成从逻辑结构到物理结构的映射
逻辑独立性:数据逻辑结构改变不影响应用程序
- 逻辑数据独立性一般难以实现
数据模型:用于描述 数据结构、数据关系、数据语义、数据约束
- 实体关系模型 -> 数据库设计过程中的概念设计
- 关系模型 -> 数据库设计过程中的逻辑设计
数据库设计步骤
- 需求分析:需要什么样的数据、应用程序和业务
- 概念数据库设计:使用ER模型或类似的高层次模型,描述数据
- 逻辑数据库设计:
- 将概念设计转化为某个DBMS所支持的数据模型
- 结构优化,关系标准化、检查冗余和相关的异常关系结构
- 物理数据库设计:索引、集群和数据库调优
- 创建并初始化数据库&安全设计:加载初始数据,测试;识别不同用户及他们的角***r>
ER模型(Entity - Relationship model)
- 实体:对象,例如客户、账户、银行分支机构,由属性进行描述
- 联系:几个实体之间的关联,例账号A-010由客户Jack拥有