SQL简介
常用的Java等语言是和计算机交流的工具,告诉计算机,让计算机做一些事。
和其类似,SQL是 Structured Query Language 的缩写,即结构化的查询语言,是和数据库交互的工具,即通过既定的一些格式,写一些命令,让数据库去做一些事。
SQL标准
一般的关系型数据库都支持使用SQL。但并不是所有的SQL标准,数据库都进行了实现。
SQL标准的基本发展历史如下:
- SQL-86: 第一个SQL标准,于1986年发布。它定义了SQL的基本结构和语法,奠定了SQL的基础。
- SQL-89: 该版本进行了一些修订和扩展,但没有引入重大变化。
- SQL-92: 于1992年发布,是SQL的第二个主要标准版本。SQL-92引入了许多新特性,包括JOIN操作、子查询、动态SQL等。它成为SQL的重要基准,对关系数据库系统的发展产生了深远影响。
- SQL:1999: 于1999年发布,是SQL的第三个主要标准版本。SQL:1999引入了许多新的特性,包括存储过程、触发器、XML支持等。这一版本的标准更加复杂和全面。
- SQL:2003: 于2003年发布,是SQL的第四个主要标准版本。它在SQL:1999的基础上进行了一些修订和扩展,但没有引入重大的新特性。
- SQL:2008: 于2008年发布,是SQL的第五个主要标准版本。这个版本引入了一些新特性,同时对SQL:2003进行了一些调整和改进。
- SQL:2011: 于2011年发布,是SQL的第六个主要标准版本。它主要是对SQL:2008的一些小幅修改,而没有引入大规模变革。
- SQL:2016: 于2016年发布,是SQL的第七个主要标准版本。它引入了JSON支持、行模式、POLYMORPHIC类型等新特性。
- SQL:2019: 于2019年发布,是SQL的第八个主要标准版本。它进一步完善了之前引入的特性,提供了更多的语法和功能。
数据库简介
数据库即一个有组织的数据集合。其逻辑结构和物理结构由数据库管理系统(DBMS)决定。
我们常说的数据库一般指的是关系型数据库,比如MySQL、Oracle、SQLServer。关系型数据库最重要的概念是 数据库>表>列>数据类型。
本系列课程使用MySQL作为讲解数据库。
数据库基础概念
数据库基础概念,联合Excel会更好理解。
这些基础概念是我们后续课程的基础,所以需要重点理解。
- 表是数据库中的基本组织单元,用于存储数据。每个表包含多行记录,每行记录包含一个或多个字段。可以类比为Excel中的工作簿。
- 字段是表中的列,用于存储特定类型的数据,如整数、字符串、日期等。可以类比Excel中的列。
- 记录是表中的一行数据,包含多个字段,每个字段存储特定的值。可以类比Excel中的一行数据。
- 主键是表中用于唯一标识每个记录的一列或一组列。主键不能重复,这是它最大的特性。
- 外键是表中的一列,它建立了与其他表的关系。外键通常与其他表的单列主键相匹配,用于确保数据的一致性,常用于级联删除什么的。不过由于删除的时候容易导致引用错误,所以在使用上和生产场景强相关。
- 索引是一种数据结构,一般对列值进行树状重组,以提高查询速度。可以类比二分算法来理解。并且索引会用单独的存储块,加载也会更快。
- 视图,视图=查询语句,用来简化查询。
- 事务是一系列数据库操作的集合,它们被视为单个原子操作。即多个操作必须全部成功,或全部失败。如果有一个操作失败,其他成功的操作将被回滚。