数据库是现代企业应用系统的核心,是存储、管理和处理大量数据的重要工具。当然也是面试必问的知识点,数据库使用者必须掌握数据库的基本概念、原理、应用场景、使用方法、扩展功能等。
为了更好地理解数据库,对于SQL的执行有更加直观的认识,这里通过手写基本的数据库内核的过程,对于SQL被程序识别的过程,数据库执行命令的算法,以及真正数据存储的形式,有更加深刻的理解。
数据库的基本操作
现在数据量都非常庞大,如果都使用excel来管理,效率实在太低。因此,数据库作为专门管理大数据的工具,其基本作用就是存储数据,并提供高效的查询数据的操作。
因此数据库的基本操作就是对数据的增删改查。
插入(INSERT):插入操作用于向表中插入一条或多条记录。 删除(DELETE):删除操作用于删除表中的一条或多条记录。 更新(UPDATE):更新操作用于修改表中的一条或多条记录。 查询(SELECT):查询操作用于从表中检索数据,并返回结果。

其中查询为了高效检索的需要,提供了多种方式查询方式,包括:
全表查询:全表查询是指从头到尾扫描整个表,返回表中所有记录。 条件查询:条件扫描是指通过索引找到满足特定条件的数据。 联结查询(JOIN):联结操作用于将两个或多个表中的数据结合起来进行查询。 部分列的查询:通过指定需要查询的列,可以减少查询的开销。
数据的存储形式
数据库的存储形式包括:
数据库:数据库是按照数据结构来组织、存储和管理数据的仓库。 表:表是数据库中存储数据的基本单位。 记录:记录是表中的一条数据。 字段:字段是记录中的数据项。
数据在数据库中是以表的形式存储的,这是关系数据库的基本特征,数据以某种关系被组织起来,形成二维表格。
表是数据库中存储数据的基本单位,类似于excel中的工作表,它的每个表格就是叫做字段值,每一行就是一条记录。
每一行记录都有若干字段,每个字段都有自己的名称和数据类型。字段的名称用于标识数据,数据类型用于定义数据存储的格式,这也被称作数据表的属性信息。
只有确定了表的属性信息,才能确定表的结构,才能确定表中的数据。
数据库的功能
数据库的功能主要包括:
解析SQL:数据库系统需要能够识别并执行SQL命令,将它转换为数据结构。 执行SQL命令:数据库系统需要能够执行SQL命令,对数据进行增删改查。 存储数据:数据库系统需要能够将数据存储在磁盘上,并提供高效的访问。 数据字典:数据库系统需要能够记录数据库的结构信息,包括表、字段、索引等。

数据库现在作为一个标准化的数据管理软件,得益于标准化的数据库操作,也就是SQL,它由专门的国际标准组织来维护更新,各个数据库都完全支持核心部分SQL标准。 因此,数据库内核的第一个模块就是解析SQL,类似于编程语言的解析,将SQL中携带的参数信息,转换为数据结构。
第二个模块就是执行SQL命令,数据库系统需要能够识别并执行SQL命令,对数据进行增删改查。当向数据表中增加记录时,执行模块为其分配存储空间,并将数据写入磁盘;查询数据时,执行模块从磁盘中读取数据,并按照查询的方式来组成结果。
第三个模块就是存储数据,数据库系统需要能够将数据存储在磁盘上,并提供高效的访问。对于关系型数据库,一般每个数据表都会对应一个磁盘文件,数据以二进制形式存储在磁盘上。
数据库系统还需要提供数据字典,用于记录数据库的结构信息,包括表、字段、索引等。数据字典的作用是方便管理员管理数据库,包括创建、删除、修改表、字段、索引等。
第四个模块就是数据字典,数据库系统需要能够记录数据库的结构信息,包括表、字段、索引等。
总结
数据库的基本操作、存储形式、功能,以及数据库内核的四个模块,是数据库的基本概念。通过手写数据库内核的过程,可以更加深刻地理解数据库的原理。




