一、为什么要学习数据库系统?
- 社会已经从业务社会转变为信息社会,信息社会离不开网络和数据库。
- 信息积累与应用的基础,数据库技术能有效的管理在效率提升方面的惊人能力。
- 大数据技术的需求,大数据技术基于海量的数据,数据通常需要存储在数据库中。
二、什么是数据库(DB)
2.1、 定义
数据库是电子化的信息集合,通俗一点来说是将信息规划化并电子化,形成库,以便计算机对信息的存储、检索、统计与管理。
2.2、 数据库与表
其实数据库起源于规范化“表”的处理,也是对表的抽象
那么我们常见的表是以按行按列形式组织及展示的数据
表能表述一批相互有关联关系的数据->关系
比如我们常见的学生成绩表
2.2.1、表对数据库的影响
E.F.Codd大佬基于对“表(Table)”的理解:
- 提出了“关系”及关系模型
- 提出了关系数据库理论
- 开创了数据库的时代
- 当前普遍应用的数据库管理系统的奠基者
- 获得了计算机领域最高奖“图灵奖”
2.2.2、对数据库新的认识:
2.2.3、数据库的范围
数据库不仅仅只有关系型数据库,还有其他的数据库比如:图数据库、文本数据库、列式数据库等。
三、什么是数据库系统(DBS)
数据库系统由数据库、数据库管理系统(及其应用开发工具)、应用程序、数据库管理员四部分构成。
那么还是比较抽象我们在对上面这个图进行实例化。帮助我们理解
四、什么是数据库管理系统(DBMS)
DBMS是一个大型复杂的基础软件系统,位于用户与操作系统之间的一层数据管理软件。DBMS能够科学地组织和存储数据、高效地获取和维护数据。 DBMS具有数据定义(提供数据库定义语言DDL),数据组织、存储和管理(提供数据操作语言DML),数据库的事务管理和运行管理(安全性等),数据库的建立和维护等功能。
4.1、DDL
需求:数据库定义,定义数据库中Table的名称、标题(内含的属性名称及对该属性的值的要求)等
功能: DBMS提供一套数据定义语言( DDL: Data Definition Language )给用户 用户使用DDL描述其所要建立表的格式 DBMS依照用户的操作描述,实际执行这些操作
目的:对数据进行定义,也就是创建数据库
4.2、 DML
需求:数据库操纵,向数据库的Table中增加/删除/更新数据及对数据进行查询、检索、统计等
功能: DBMS提供一套数据操纵语言( DML: Data Manipulation Language)给用户 用户使用DML描述其所要进行的增、删、改、查等操作 DBMS依照用户的操作描述,实际执行这些操作
目的:对数据进行增删查改等操作
4.3、 DCL
需求:数据库控制,控制数据库中数据的使用 —些用户可以使用,哪些不可以
功能: DBMS提供一套数据控制语言( DCL: Data Control Language)给用户 用户使用DCL描述其对数据库所要实施的控制 DBMS依照用户的描述,实际进行控制
目的:保证数据安全性,完整性。
4.4 数据库维护
需求:数据库维护,转储/恢复/重组/性能监测/分析
功能: DBMS提供一系列程序(实用程序/例行程序)给用户 在这些程序中提供了对数据库维护的各种功能 用户使用这些程序进行各种数据库维护操作 数据库维护的实用程序,一般都是由数据库管理员(DBA)来使用和掌握的
目的:对数据库的维护
4.5 数据库语言总结
数据库语言:使用者通过数据库语言利用DBMS操作数据库
- 数据定义语言(DDL:DataDefinition Language),提供给用户, 以便用户定义数据库/表
- 数据操纵语言(DML:DataManipulation Language), 提供给用户,以便用户操作数据
- 数据控制语言(DCL:DataControl Language),提供给用户,以便用户对数据进行控制
- 数据库各种维护操作的执行,按照用户(DBA)要求定义,操纵,控制和维护管理
五、数据库、数据库管理系统、数据库系统三者之间的关系
- 范围最大的是数据库系统,在概念上包含其他两者。数据库系统中,最外层的是数据库应用系统,中间是数据库管理系统,最里层才是数据库。
- 数据库中的信息是通过数据库管理系统来进行组织、存储、管理、开发,数据库是按照数据结构来组织、存储和管理数据的仓库。
- 而数据库管理系统是前端与用户交互的应用系统和数据库之间的媒介,是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。