3.1 SQL查询语言概览
3.1 SQL
查询语言概览
SQL
语言组成
SQL
语言有以下几个部分:
- 数据定义语言(
Data-Definition Language
,DDL
):SQL DDL
提供定义关系模式
、删除关系
以及修改关系模式
的命令。- 授权(
authorization
):SQL DDL
包括定义对关系和视图的访问权限的命令。 - 完整性(
integrity
):SQL DDL
包括定义完整性约束的命令,保存在数据库中的数据必须满足所定义的完整性约束。破坏完整性约束的更新是不允许的。 - 视图定义(
view definition
):SQL DDL
包括定义视图的命令。
- 授权(
- 数据操纵语言(
Data-Manipulation Language
,DML
):SQL DML
提供从数据库中查询信息
,以及在数据库中插入元组
、删除元组
、修改元组
的能力. - 事务控制(
transaction control
):SQL
包括定义事务的开始和结束的命令。 - 嵌入式
SQL
和动态SQL
(embedded SQL and dynamic SQL
):嵌入式和动态SQL
,定义SQL
语句如何嵌入到通用编程语言,如C
、C++
和Java
中。
第3章中介绍的SQL
本章我们给出对SQL
的基本DML
和DDL
特征的概述。在此描述的特征自SQL-92
以来就一直是SQL
标准的部分。
第4章中介绍的SQL
在第4章我们提供对SQL
查询语言更详细的介绍,包括:
- 各种连接的表达;
- 视图;
- 事务;
- 完整性约束;
- 类型系统;
- 授权。
第5章中的SQL
在第5章我们介绍SQL
语言更高级的特征,包括:
- 允许从编程语言中访问
SQL
的机制; - SQL函数和过程;
- 触发器;
- 递归査询;
- 高级聚集特征;
- 为数据分析设计的一些特征,它们在
SQL:1999
中引人,并在SQL
的后续版本中使用。
在后面第22章,我们将概述SQL:1999
引人的对SQL
的面向对象扩充。
不同的SQL
实现存在差异
尽管大多数SQL
实现支持我们在此描述的标准特征,读者还是应该意识到不同SOL
实现之间的差异。大多数SQL
实现还支持一些非标准的特征,但不支持一些更高级的特征。