-
数据库(database)/资料库
常见的数据库/资料库且以物理形式存在的,比如图书馆,再比如书柜。
是一种有组织的存放资料/数据的容器。 -
数据库管理系统(DBMS)
创建数据库和管理数据库的系统,可以对数据库进行组织、管理、访问、修改等操作的一套软件。
我们常说的Mysql是DBMS。
我们常说的访问什么什么数据库/利用什么什么数据库可能是一种误用,我们在客户端与服务器端的DBMS交互,然后DBMS访问database检索数据,然后将数据返回呈现到客户端。 -
服务器端
直接与数据库打交道的软件一般认为是服务器端。 -
客户端
直接与用户接触的一端,通过通信访问服务端的一般认为是客户端。 -
表
表是database中基本的文件存在形式。表可以认为是一种数据的组织和存放的形式,和我们通常接触的excel表格有些类似但区别更大。数据库中的每个表都有一个名字,用来标识自己。此名字是唯一的,这表示数据库中没有其他表具有相同的名字。
一般是由行和列组成,一行代表一个record,每一个record包括若干列,每一列记录着对应的信息。
-
页
在MySQL中,表是一种存储数据的逻辑结构,而页则是表在磁盘上实际存储数据的物理单元。
具体来说,表由多个行组成,每一行都包含多个列。当我们在MySQL中执行INSERT操作时,会往表中插入新的行;当执行UPDATE或DELETE操作时,会对表中已有的行进行更新或删除。而页则是MySQL将表的数据存储到磁盘上的最小单元,一个页可以存储多个行。MySQL使用B+树这种数据结构来管理表的数据,每个节点代表一个页面,其中叶子节点存储实际的行数据,非叶子节点则存储指向下级节点的指针。
因此,表和页之间的联系就是:一个表的数据被分割成多个页存储在磁盘上,每个页包含了部分表的行数据。当我们查询表中的数据时,MySQL会根据B+树索引找到相应的页,然后读取页中的行数据并返回给我们。
-
列
每一个record可以被分割成几个字段,每个字段记录着不同数据类型的数据。可以想象为excel表中的列。 -
行
可以想象为excel表中的行。 -
数据类型
比如字符类型规定了这一列存储的数据是字符
比如浮点数类型规定了这一列存储的数据是浮点数
列的数据类型规定和限制了数据的存储和读取方式。 -
主键
可以认为是行的标识符。
表中每一行都应该有可以唯一标识自己的一列(或一组列)。表中的任何列都可以作为主键,只要它满足以下条件:
- 任意两行都不具有相同的主键值
- 每个行都必须具有一个主键值(主键列不允许NULL值)
-
SQL语句
SQL(发音为字母S-Q-L或sequel)是结构化查询语言(Structured Query Language)的缩写。 SQL是一种专门用来与数据库通信的语言。
认识一下页的结构 – 也就是物理磁盘上数据的存放形式。
大约11种页类型,其中比较关注的是数据页。其他的页类型在特定场景下也非常重要,但暂不涉及。
主要包括三个部分:
- -第一部分是页头
- 第二部分是页脚
- 第三部分是 数据页
更形象的总结如下: