引言

SQL是使用最为广泛的数据库语言。不管你是应用开发者、数据库管理员、Web应用设计师、移动应用开发人员,还是只使用Microsoft Office,掌握良好的SQL知识对用好数据库都是很重要的。

本书可以说是应需而生。我讲授了多年的Web应用开发,学生们经常要求我推荐一些SQL图书。SQL方面的书很多,有的其实很不错,但它们都有一个共同的特点,就是讲授的内容太多了,多数人其实不需要了解那么多。很多图书讲的不是SQL本身,而是从数据库设计、规范化到关系数据库理论以及管理问题等,事无巨细都讲一通。当然,这些内容也很重要,但大多数读者仅想学习SQL,他们未必感兴趣。

因此,我找不到合适书籍推荐给学生,只好把在课堂上给学生讲授的SQL知识汇编成了本书。本书将讲授读者需要了解的SQL知识,从简单的数据检索入手,逐步过渡到一些较为复杂的内容,如联结、子查询、存储过程、游标、触发器以及表约束等。读者将从本书中循序渐进、系统而直接地学到SQL的知识和技巧。

本书写到了第4版,它已经教会了英语国家近30万的读者使用SQL,并且还翻译出版了十多种其他语言的版本。现在轮到你了,让我们翻到第1课,开始学习吧。你将很快编写出世界级的SQL。

读者对象

本书适合以下读者:

  • SQL新手;
  • 希望快速学会并熟练使用SQL;
  • 希望知道如何使用SQL开发应用程序;
  • 希望在无人帮助的情况下有效而快速地使用SQL。

本书涵盖的DBMS

一般来说,本书中所讲授的SQL可以应用到任何数据库管理系统(DBMS)。但是,各种SQL实现不尽相同,本书介绍的SQL主要适用于以下系统(需要时会给出特殊说明和注释):

  • Apache Open Office Base;
  • IBM DB2;
  • Microsoft Access;
  • Microsoft SQL Server(包括Microsoft SQL Server Express);
  • MariaDB;
  • MySQL;
  • Oracle(包括Oracle Express);
  • PostgreSQL;
  • SQLite。

本书中的所有数据库示例(或者创建数据库示例的SQL脚本例子)对于这些DBMS都是适用的,它们可以在本书的网页http://forta.com/books/0672336073/上获得。

本书约定

本书采用等宽字体表示代码,读者输入的文本与应该出现在屏幕上的文本也都以等宽字体给出。如:

  1. It will look like this to mimic the way text looks on your screen.

变量和表达式的占位符用斜体表示,你可以用具体的值代替它。

代码行前的箭头(enter image description here)表示代码太长,上一行容纳不下。在enter image description here符号后输入的所有字符都应该是前一行的内容。

说明
给出上下文讨论中比较重要的信息。

提示
就某任务给出建议或更简单的方法。

注意
提醒可能出现的问题,避免出现事故。

新术语
清晰定义重要的新词汇。

输入▼

读者可以自己输入的代码,通常紧挨着代码出现。

输出▼

强调某个程序执行时的输出,通常出现在代码后。

分析▼

对程序代码进行逐行分析。