SQL的产生与发展1970年,美国IBM研究中心的E.F.Codd连续发表多篇论文,提出关系模型。1972年,IBM公司开始研制实验型关系数据库管理系统SYSTEM R,配制的查询语言称为SQUARE (Specifying Queries As Relational Expression )语言,在语言中使用了较多的数学符号。1974年,Boyce和Chamberlin把SQUARE修改为SEQUEL (Structured English QUEry Language )语言。后者去掉了一些数学符号,并采用英语单词表示结构式的语法规则。后来SEQUEL简称为SQL (Structured Query Language ),即“结构式查询语言”,SQL的发音仍为“sequel”。现在SQL已经成为一个标准。
SQL数据库的体系结构在SQL中,关系模式称为“基本表”,存储模式称为“存储文件”,子模式称为“视图”(View),元组称为“行”,属性称为“列”。
SQL数据库体系结构要点如下:
(1)一个SQL模式是已命名的数据组,由表、授权、规则、约束等组成。
(2)一个SQL表由行集构成,一行是列的序列,每列对应一个数据项。
(3)表有三种类型:基本表、视图和导出表。基本表是实际存储在数据库中的表,视图是由若干基本表或其他视图构成的表的定义,而导出表是执行查询后产生的表。
(4)一个基本表可以跨一个或多个存储文件,一个存储文件也可以存放一个或多个基本表。每个存储文件与外部存储器上一个物理文件对应。
(5)用户可以用SQL语句对基本表和视图进行查询等操作。在用户看来,两者是一样的,都是表。
(6)SQL用户可以是应用程序,也可以是终端用户。即可嵌在宿主语言的程序中使用,也可作为独立的用户
接口,供交互环境下的终端用户使用。
SQL的组成核心SQL主要有四个部分:
(1) 数据定义语言,即SQL DDL,用于定义SQL模式、基本表、视图、索引等结构。
(2) 数据操纵语言,即SQL DML。数据操纵分成数据查询和数据更新两类。其中数据更新又分成插入、删除和修改三种操作。
(3) 嵌入式SQL语言的使用规定。这一部分内容涉及到SQL语句嵌入在宿主语言程序中的规则。
(4) 数据控制语言,即SQL DCL,这一部分包括对基本表和视图的授权、完整性规则的描述、事务控制等内容。