结构化查询语言(structured query language)是关系数据库的标准语言
一. SQL概述
SQL语言与1974年由Boyce等提出,并与1975—1979年在IBM公司研制的System R数据库管理系统上实现,现已成为国际标准
- SQL的发展标准
- SQL语言由4部分组成
-
DDL(Data Definition Language):数据定义语言,用于定义数据库对象:库、表、视图、索引,扩展DDL还支持存储过程、函数、对象、触发器。
DDL包括3类语言:定义、修改、删除 主要:create、alter、drop
-
DML(Data Manipulation Language):数据操纵语言,进行更新(增删改)和检查数据完整性
主要:insert、delete、update
-
DCL(Data Control Language):数据控制语言,用于定义用户的访问权限、安全级别、完整性规则定义、事务(Transaction Control Language,TCL)定义。
主要:grant(授予访问权限)、revoke(撤销访问权限)、commit(提交事务处理)、 rollback(事务处理回退)、savepoint(设置保存点)
-
DQL(Data Query Language):数据查询语言,用来查询记录
主要:select
-
其他:主要是嵌入式SQL语言和动态SQL语言的定义,规定了SQL语言在宿主语言中使用的规则
-
SQL特点
-
综合统一
-
高度非过程化
-
面向集合的操作方式
-
同一种语法结构提供两种使用方式
即使自含式语言:独立用于联机交互,可在键盘上直接键入SQL命令对数据库操作 也是嵌入式语言:SQL语句能够嵌入到高级语言(Java、VC、VB等)
-
语言简洁,易学易用
-
二. SQL数据查询语言
SQL语言支持关系数据库管理系统的三级模式结构
用户使用SQL语言可对基本表、视图、和查询表进行操作
-
基本表
数据库中独立存在的表
在SQL中一个关系对应一个基本表,一个(或多个)基本表对应一个存储文件
一个表可以带若干索引,索引也可以存放在存储文件中 -
视图
视图指从一个或几个基本表(或视图)中导出的表,是虚表,只存放视图的定义而不存放对应数据 -
查询表
指查询结果对应的表 -
存储文件
指数据库中存放关系的物理文件,其逻辑结构组成了关系数据库的内模式,其物理结构对用户是透明的