您现在的位置:e-works > 智造书屋 > 书籍列表 > 大话数据库 > SQL语言

第一章 概述

第七节 SQL语言

    小天:你说的ANSI SQL标准是个神马东西?

    老田:要说ANSI SQL标准就得先说神马是SQL,SQL(Structured Query Language)结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。读音可以是S-Q-L,逐个发音,不过大多数牛人更习惯读作“sequel”。SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的SQL接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出。这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能。多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。

    SQL语言包含以下3个部分。

    *数据定义语言(Data Definition Language,DDL),定义(definition)。例如:CREATE、DROP、ALTER等语句。

    *数据操作语言(Data Manipulation Language,DML),操作(make)。例如:INSERT(插入)、UPDATE(修改)、DELETE(删除)等语句。

    *数据控制语言(Data Controlling Language,DCL),控制(control)。例如:GRANT、REVOKE、COMMIT、ROLLBACK等语句。

    小天:我在其他的SQL Server的书中常常看到“T-SQL语言”这个词,是什么?

    老田:T-SQL,全称Transact-SQL。它也遵循SQL标准,但是在这个基础上,做了少量的扩展。换句话说,T-SQL语言是遵循SQL标准的,专门为SQL Server做了少量扩展的扩展SQL语言。

    小天:我又要担心了,我要学习的是数据库,不是单纯的SQL Server。

    老田:在本书范围内所讲的99%的T-SQL语法,都是完全遵循SQL标准的。否则我干脆叫它为大话SQL Server,何必叫它大话数据库呢?