前言
SQL(Structured Query Language,结构化查询语言)是一种功能强大的数据库查询和程序设计语言,用于存取数据及查询、更新和管理关系数据库系统。
SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,充分体现了关系数据语言的特点和优点,它已成为关系数据库领域中的一种主流语言。
自SQL成为国际标准语言以来,各个数据库厂家纷纷推出了各自支持SQL的软件或能够与SQL接口的软件,这就使得大多数数据库使用SQL作为共同的数据库语言和标准接口成为可能,不同数据库系统之间的相互操作也有了共同的基础。而且对数据库以外的领域也产生了很大影响,有不少软件产品将SQL语言的数据查询功能与图形功能、软件工程工具、软件开发工具、人工智能程序结合起来。
全书共分为9课,第1课介绍了关系数据库和SQL概述,并着重介绍了SQL Server系列至今的发展及最新版本SQL Server 2012的特点及功能,同时兼顾了该系列至今应用最广的SQL Server 2008和2000版本。全文实例均是在SQL Server 2012中的运行结果,如无特别说明,操作和代码在SQL Server 2008和SQL Server 2000中也都能执行。第2课介绍了SQL中常用的数据类型,数据库和表的一些相关操作,包括数据库的创建与删除,表的创建、修改与删除。第3课和第4课介绍了与SQL查询(SELECT)语句相关的一系列的数据查询方法,包括构成SQL的基础元素,查询的基本结构及单列查询、简单搜索条件的查询、复杂搜索条件的查询、多表查询、聚合函数与组合查询等。第5课介绍了SQL中数据插入(INSERT)、更新(UPDATE)与删除(DELETE)语句。第6课介绍了视图、索引的相关知识,以及在SQL环境中创建、删除视图和索引的语法及实现实例。第7课介绍了SQL中的存储过程与函数。第8课介绍了SQL中触发器的有关概念和操作。第9课介绍了事务及其操作及并发处理的相关内容。这些内容使读者能熟练运用SQL语句,并能够基于不同数据库工具熟练高效地进行项目开发。
本书以“实例”为主线,用大量小例子作为全书主体结构进行功能和知识的讲解。本书可以作为学习和使用SQL的计算机专业或相关专业人员的参考手册,使他们能够全面了解开发专业实例之前所应掌握的基本知识。
本书由张琨统稿,贾若、王青和罗昕在本书的编写过程中亦提供了帮助。在本书的编写过程中,尽管编者竭尽全力,但由于自身水平有限和时间仓促,书中难免有疏漏和不当之处,敬请读者批评指正,不胜感激!
编者
2011年8月