目录
结构化查询语言SQL
- 结构化查询语言(Structured Query Language)简称SQL。
- 一种特殊目的的编程语言:是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
- 同时也是数据库脚本文件的扩展名。
- 结构化查询语言是高级的非过程化编程语言(就是只要结果不要执行过程的编程语言,输入想要的信息,只要简单的查询语句,而不必在意DBMS在底层怎么实现的)。
标准支持
- 1986年10月,美国国家标准协(ANSI)会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言。
- 1987年得到国际标准组织(ISO)的支持下成为国际标准。
- 不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用(因为很多数据库在SQL产生之前就已经有了,但是大部分的语法相同,即使不同的语法部分也是有相同的编程思想的,上手另一种数据库还是很快的)。
SQL的影响
结构化查询语言SQL是最重要的关系数据库操作语言,并且它的影响已经超出数据库领域,得到其他领域的重视和采用,如人工智能领域的数据检索,第四代软件开发工具中嵌入SQL的语言等。
语言特点
- 一体化:SQL集数据定义DDL、数据操纵DML和数据控制DCL于一体,可以完成数据库中的全部工作。
- 非过程化:只提操作要求,不必描述操作步骤,也不需要导航。使用时只需要告诉计算机“做什么”,而不需要告诉它“怎么做”。
- 语言简洁,语法简单,好学好用:在ANSI标准中,只包含了94个英文单词,核心功能只用6个动词,语法接近英语口语。
- 使用方式灵活:它具有两种使用方式,即可以直接以命令方式交互使用;也可以嵌入使用,嵌入到C、C++、FORTRAN、COBOL、JAVA等主语言中使用。
语句结构
结构化查询语言包含6个部分:sql语句以;结尾
- 数据定义语言(DDL:Data Definition Language):用来定义数据库对象:库、表、列等。
- 数据查询语言(DQL:Data Query Language):用来查询记录(数据)。
- 数据操作语言(DML:Data Manipulation Language):用来定义数据库记录(数据)。
- 数据控制语言(DCL:Data Control Language):用来定义访问权限和安全级别。
- 事务处理语言(TPL):它的语句能确保被DML语句影响的表的所有行及时得以更新。
- 指针控制语言(CCL):它的语句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。