文章目录
DBMS(1)
体系结构
数据库
用户数据——用户维护(DML语句)
系统数据——DBMS(DDL语句维护)
元数据,系统目录,数据字典,描述数据
结构信息
包含的子系统
安全性系统
完整性系统
并发控制系统
备份恢复系统
系统目录(user-accessible catalog)
用户可以查看,但不能修改
视图
提供给客户部分想要的数据
提高安全性
不存储数据,是一个虚表
人员
Data Administrator(DA)
负责数据的质量
Database Administrator (DBA)
数据库的维护
DD
数据库的设计
AP
EU
SQL
DDL
Create,Alter,drop
DML
insert,update,delete,select
DCL
grant,revoke
数据库设计(ER模型)+规范化
设计
对现实世界进行抽象,画出ER图,转化成表结构,确定表之间的关系,再到实际物理操作
概念->逻辑->物理
范式
第一第二第三范式
数据库的保护
安全性
保证数据库的数据不被非法访问
通过权限来保证
完整性
保证数据库的数据是正确或有效的
通过约束条件(eg:主键,外键)来保证
通过触发器也能保证数据的完整性
并发控制
对多个用户同时访问时,不会互相干扰
Lock,共享锁,排态锁
备份与恢复
日志(log)
主键
保证非空和唯一
历史
一代 网型数据库,用图存储
二代 关系型数据库, 用表存储,用外键来体现数据之间的关系
三代 对象关系型数据库,支持建表存储,也支持建立对象存储
非关系型数据库,
优点
控制数据的冗余
数据的一致性
相同数据得到更多的信息与应用
共享数据
数据完整性
标准化
改善访问
数据独立性
逻辑独立性,物理独立性
并发访问
备份
缺陷
复杂
太大了,不轻量级
花费
崩溃后损失太大
DBMS(2)
数据库体系结构的三层架构
可以允许数据被多个用户访问
immune免疫
视图层不受其他视图层操作的影响
不需要用户确切了解数据的实际物理信息
内模式/内部层
针对物理层面的访问方法等
数据库在物理层面上的表示
概念模式/概念层
针对所有表的集合
存储数据,存储关系
外模式/外部层
数据库的视图,视图所在位置,可以有多个
和特定应用对应的数据相关
两个映像保证两个独立性
概念层和内部层之间的映像
保证物理独立性
概念层和外部层之间的映像
保证逻辑独立性(并非所有情况都能实现)
逻辑独立性
对概念模式修改对视图没有影响
概念模式修改:增加实体,删除实体(还是会有影响),增加字段等
物理独立性
一定能够实现
内模式的修改->概念层无影响->外模式无影响
eg:数据从C盘移动到D盘
DDL与DML
DML
过程化DML与非过程化DML
第四代语言
Query Languages
Forms Generators
Report Generators
Graphics Generators
Application Generators
数据模型
实际上是一些概念集合:描述数据,数据之间的关系,相互之间的约束条件
结构(网,树,表…),操作,约束条件
目的
更好的表示数据
基于对象
Entity-Relationship ER
Semantic
Functional
Object-Oriented
基于记录
建模
概念建模
设计=建模
数据库设计:
概念设计:Er图
逻辑设计:确定表结构(关系型数据库)
物理设计:使用DDL语句进行建表(搭建表结构)