数据库模型与语言-1-初步认识数据库系统
一、基础知识和关系模型
第一讲 初步认识数据库系统
1.为什么要学习数据库系统?
(1)Everything Over DB?
(2)信息积累与运用的基础—数据库?
(3)基于数据库的应用—大数据?
(4)数据自有黄金屋?
2.什么是数据库?
(1)数据库与信息管理
数据库是电子化信息的集合
将信息规范化并使之电子化,形成电子信息 ‘库’,以便利用计算机对这些信息进行快速 有效的存储、检索、统计与管理
(2)数据库与“表”
数据库起源于规范化“表(Table)”的处理
Table: 以按行按列形式组织及展现的数据
(3)基于“表”的数据库的影响
E.F.Codd, 基于对“表(Table)”的理解:
- 提出了“关系”及关系模型
- 提出了关系数据库理论
- 开创了数据库的时代
- 当前普遍应用的数据库管理系统的奠基者
- 获得了计算机领域最高奖“图灵奖
(4)对“表”的抽象:理解-区分-命名-表达?
列/字段/属性/数据项(column/field/attribute/data item)
行/ 元组/ 记录( row / tuple / record )
Table中描述了一批相互有关联关系的数据==关系
(5)数据库与“表”的关系?
Database: 相互之间有关联关系的Table的集合
(6)由表形式的数据库 到 各式各样的数据库?
3.什么数据库系统?
(1)数据库系统的构成—概念层次
数据库系统(工作环境):
- 数据库(DB): Database
- 数据库管理系统(DBMS): Database Management System
- 数据库应用(DBAP): DataBase Application
- 数据库管理员(DBA): DataBase Administrator
- 计算机基本系统
4. 什么是数据库管理系统?
(1)从用户角度看数据库管理系统的功能?
数据库定义: 定义数据库中Table的名称、标题(内含的属性名称及对该属性的值的要求)等
- DBMS提供一套数据定义语言(DDL:Data Definition Language)给用户
- 用户使用DDL描述其所要建立表的格式
- DBMS依照用户的定义,创建数据库及其中的Table
数据库操纵: 向数据库的Table中增加/删除/更新数据及对数据进行查询、检索、统计等
- DBMS提供一套数据操纵语言(DML:Data Manipulation Language)给用户
- 用户使用DML描述其所要进行的增、删、改、查等操作
- DBMS依照用户的操作描述,实际执行这些操作
数据库控制: 控制数据库中数据的使用—哪些用户可以使用,哪些不可以
- DBMS提供一套数据控制语言(DCL:Data Control Language)给用户
- 用户使用DCL描述其对数据库所要实施的控制
- DBMS依照用户的描述,实际进行控制
数据库维护: 转储/恢复/重组/性能监测/分析
- DBMS提供一系列程序(实用程序/例行程序) 给用户
- 在这些程序中提供了对数据库维护的各种功能
- 用户使用这些程序进行各种数据库维护操作
- 数据库维护的实用程序,一般都是由数据库管理员(DBA)来使用和掌握的
(2)数据库语言?
数据库语言:使用者通过数据库语言利用DBMS操作数据库
- 数据定义语言(DDL:Data Definition Language) —-DBMS提供给用户,以便用户定义数据格式
- 数据操纵语言(DML:Data Manipulation Language) —-DBMS提供给用户,以便用户对数据进行操作
- 数据控制语言(DCL:Data Control Language) —-DBMS提供给用户,以便用户对数据进行控制
- 数据库各种操作的执行—-DBMS按用户要求进行定义、操纵、控制和维护
1,2,3属于SQL语言:结构化的数据库语言
数据库语言与高级语言: 一条数据库语言语句相当于高级语言的一个或多个循环程序
数据库语言可以嵌入到高级语言(宿主语言)中使用
(3)从系统实现角度看DBMS的功能?
形式–构造–自动化”–数据库管理系统的实现
数据库管理系统(系统软件):从系统角度看DBMS的功能 :
DBMS为完成DB管理,在后台运行着一系列程序
- 语言编译器:将用数据库语言书写的内容,翻译成DBMS可执行的命 令。例如: DDL编译器, DML编译器, DCL编译器等; 查询优化(执行引擎)与查询实现(基本命令的不同执行算法):提高数据 库检索速度的手段;例如贯穿于数据存取各个阶段的优化程序;
- 数据存取与索引:提供数据在磁盘、磁带等上的高效存取手段。例如:存储管理器,缓冲区管理器,索引/文件和记录管理器等;
- 通信控制:提供网络环境下数据库操作与数据传输的手段
- 事务管理:提供提高可靠性并避免并发操作错误的手段
- 故障恢复:使数据库自动恢复到故障发生前正确状态的手段,例如提供了备份、运行日志操控等实用程序
- 安全性控制:提供合法性检验,避免非授权非法用户访问数据库的手段
- 完整性控制:提供数据及数据操作正确性检查的手段
- 数据字典管理:管理用户已经定义的信息
- 应用程序接口(API):提供应用程序使用DBMS特定功能的手段
- 数据库数据装载、重组等实用程序
- 数据库性能分析:统计在运行过程中数据库的各种性能数据,便于优化 运行
(4)典型的数据库管理系统(DBMS)
–Oracle –DB 2 (IBM) –Sybase –MS SQL Server –MS Access –MS Foxpro
参考资料:
哈尔滨工业大学 战德臣
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn