SQL全称是结构化查询语言,英文译作Structured Query Language,它是一种在关系型数据库中定义和操作数据的标准语言。目前,所有主要关系型数据库管理系统都支持某个标准的SQL语言,其中大部分数据库都遵守ANSI SQL 89标准。
一、SQL语言的特点
1、集合性
SQL可以在高层的数据结构上进行工作,工作时不是单条的处理记录,而是对数据进行成组的处理,所有SQL语句都接收集合作为输入,并且返回集合作为输出,SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。
2、统一性
SQL为许多任务提供了统一的命令,这样方便用户学习和使用,基本的SQL命令只需很少的时间就能学会,最高级的命令在几天内也可以掌握。数据库的操作任务主要由以下几方面:
- 查询数据。
- 在表中插入、修改和删除记录。
- 建立、修改和删除数据对象。
- 控制对数据和数据对象的读写。
- 保证数据库一致性和完整性。
3、易于移植性
所有的关系型数据库管理系统都支持SQL语言,这样用户就比较容易讲原先使用的SQL的技能从一个DBMS转到另一个,而且用兼容SQL标准编写的程序都是可以移植的。
二、SQL语言的分类
SQL是关系型数据库的基本操作语言,是数据管理系统与数据库进行交互的接口。不同的功能又分别对应着各自的SQL语言,具体如下:
1、数据查询语言(DQL)
用户检索数据库中的数据,主要是select语句,它在操作数据库的过程中使用最为频繁,也是最复杂最重要的语句。
2、数据操纵语言(DML)
用于改变数据库中的数据,主要包括insert、update和delete 3条语句。
insert语句用于将数据插入到数据库中,update语句用于更新数据库中已经存在的数据,delete语句用于删除数据库中已经存在的数据。
3、数据定义语言(DDL)
用于建立、修改和删除数据库对象。
例:create table语句可以创建表,alter table语句可以修改表结构,drop table语句可以删除表。
4、数据控制语言(DCL)
用于执行权限授予和权限收回操作,主要包括 grant 和 revoke 两条命令。
grant 命令用于给用户或角色授予权限,而 revoke 命令则用于收回用户或角色所具有的权限。
5、事务控制语言(TCL)
用于维护数据的一致性,包括 commit、rollback 和 savepoint 3条语句。
commit 语句用于提交对数据库的更改,rollback 语句用于取消对数据库的更改,而 savepoint 语句则用于设置保存点。
三、SQL语言的编写规则
- SQL关键字不区分大小写,既可以使用大写格式,也可以使用小写格式,或者大小写格式混用。
- 对象名和列名不区分大小写,既可以用大写格式,也可以使用小写格式,或者大小写格式混用。
- 字符值区分大小写。当在SQL语句中引用字符值时,必须给出正确的大小写数据,否则,不能得到正确的查询结果。