现在的位置: 首页 > 综合 > 正文

聚焦ANSI SQL2003——新版特色

2013年05月26日 ⁄ 综合 ⁄ 共 3260字 ⁄ 字号 评论关闭

前言 

结构化查询语言(SQL)自20世纪70年代以来,一直与信息科技齐头并进,因此,在商业界与产业界中,它是最广泛使用的数据库操纵语言。许多软件公司与程序开发者(包括开放源码推动者,http://www.opensource.org)均各自开发了自己的SQL方言(dialect),以便适应特定的专业需求。同时,标准版还开发了越来越多的通用功能。

SQL技术手册(第三版)》描述了每条SQL命令的最新ANSI标准:SQL2003SQL3),收录了这些命令在各种平台上的实现方式。本书包括关系数据库管理系统(relational database management systemRDBMS)模型的简洁说明、基础RDBMS概念的明确解释及详尽的SQL语法和命令。

最为重要的是,无论你是程序员还是开发者,《SQL技术手册(第三版)》提供了市场上最受欢迎的商用数据库软件包(Microsoft SQL ServerOracle)的简明指南。本书还是两种最广为人知的开放源码数据库产品(MySQLPostgreSQL)的简明指南。本书对开放源码SQL平台的重视呼应了开放源码运动在计算机界日趋重要的形势。

本书讲述的SQL语法包括:

l   ANSI SQL2003(也称为SQL3)标准语法;

l   MySQL 5.1版;

l   Oracle Database 11g

l   PostgreSQL 8.3版;

l   Microsoft SQL Server 2008

本书特色

有关关系数据库的主要信息来源是厂商提供的说明文档及帮助文件。尽管每家厂商的帮助文件是大多数数据库程序员及数据库管理员优先参考的必备资源,但这类文件有如下限制。

l   只讲述了数据库厂商的SQL实现,而SQL实现如何满足SQLANSI 标准,它并没有为你指定任何上下文(context )。

l   只讲述了单一、特定数据库厂商的产品。并未涵盖转译(translation)、迁移(migration)或集成(integration)的议题。

l   通常用许多片段式小说明文档或帮助文件来解释程序设计方法。

l   于个别命令的描述通常拘泥于细节,进而模糊了程序员与管理员平时使用命令的简洁方式。

换句话说,厂商数据库的说明文档,对特定的数据库厂商平台的各方面均提供了详尽的说明。这是很自然的,毕竟,帮助性文字本来只是锁定产品的主要内容。这些帮助性文字告诉你命令的特定语法(及其所有模糊的变化版本),以及大体上如何实现它。如果经常更换关系数据库管理系统(relational database management system, RDBMS),并须要很快入门时,你将很少用到那些模糊的命令变形,而须使用一般情形下的一般功能。

本书从专业数据库管理员与开发者身上汲取经验(他们每天使用这些SQL变化版本以支持复杂的企业应用程序),从数据库厂商说明文档未能涵盖的部分延续说明。本书以精简易用的形式帮助读者吸收他们的宝贵经验。无论你是SQL新手还是从早期就开始使用SQL的老手,都可以从中学到新秘诀和新技巧。另外,当你更换不同的系统时,一定要注意在不小心或不熟悉的情况下容易出错的问题。

本书目标读者

SQL技术手册(第三版)》对多种类型的读者均有帮助:包括需要简便的SQL参考工具的程序员、需要迁移SQL方言的程序开发者及数据库管理员(database administratorDBA)——他们要执行众多SQL语句令企业数据库持续地运行,且要创建并管理数据表、索引和视图对象等。

本书是一本参考手册,而非学习指南。因此没有用解说的方式撰写。例如,本书并没有解释基本的循环概念。有经验的程序员早已了解这些概念,他们要了解的是程序的精髓。因此,本书会解释ANSI标准光标(cursor)的详细功能,它在本书收录的数据库平台上是如何运行的、在各个数据库平台上光标的特殊功能、光标的多种陷阱及如何避免这些陷阱。

尽管本书并不打算把《SQL技术手册(第三版)》作为SQL的学习指南或数据库设计手册,但是依然简短地讲述了这些介绍性议题,希望能对读者有所帮助。第1章与第2章是SQL简介,涵盖了SQL语言的大致起源、重要结构及基本操作。如果你是SQL新手,这些章节将帮助你入门。

本书结构

SQL技术手册(第三版)》共4章及一个附录。

1  SQL历史与实现

讨论关系数据库模型,说明目前及在此之前的SQL标准,并介绍本书收录的SQL实现。

2  基本概念

涵盖了了解关系数据库及SQL命令所需的基本概念。

3  SQL语句命令参考

依照字母顺序列出SQL语句的命令。详细说明了每条命令的最新ANSI标准(SQL3),以及每条命令用MySQLOraclePostgreSQLSQL Server实现的方式。

4  SQL 函数

依照字母顺序列出ANSI SQL3 函数,说明所有SQL3函数的数据库厂商实现。另外,本章也包含了各个平台独有函数的实现。


附录  平台共有与独有的关键字

按不同数据库平台列出SQL3公布的关键字表。读者可以在此表中查询不应该在对象或变量名中使用的词汇。

本书使用指南

SQL技术手册(第三版)》主要是一本命令参考手册。因此,读者可以用它来查询多种SQL命令与函数。但是,由于ANSI标准,再加上四种数据库平台均有自己的说明文档文件,因此各条命令的说明很可能会变得相当繁琐。

为了避免每条命令的说明过于冗长,本书选择比较每种平台的SQL3标准实现。对平台支持SQL3中提及的子句,将不再重复说明。

每条SQL3命令的说明中都会列举通用及可互用的示例。由于SQL3标准优先于大部分数据库平台,因此本书所讨论的平台中不支持SQL3的命令,在此便不举例说明了。另外,对于各数据库平台的扩充及高级功能,本书提供了更多的示例说明。

我们知道,本书可能要求读者由某种平台的命令实现跳回翻阅对应的SQL3命令说明。但是,我们觉得此种方式会比在书内放入数百页的重复内容要好得多。

资源

以下网址提供本书收录的不同平台的附加信息。

MySQL

MySQL的企业资源网址是http://www.mysql.com另外一个不错的网站是http://dev.mysql. com/doc/refman/5.1/en/Devshed.com是很棒的程序开发者资源,上面有很多有用的秘诀。有关MySQL特有的信息,请参见http://www.devshed.com/c/b/ MySQL/

PostgreSQL

此开放源码数据库的主页位于http://www.postgresql.org。上面除了有丰富的信息可供下载以外,还有PostgreSQL用户的邮件列表。另外一个值得探索的PostgreSQL网站是http://www.pgsql.com,它为商务客户提供相关支持。

Oracle

Oracle的网络空间是http://www.oracle.comOracle忠实用户的绝佳资源是http://www.oracle. com/technology/。在http://www.oracle.com/technology/documentation/index.html上,也可以找到所有的Oracle文档。关于Oracle的宝贵独立信息,请访问位于http://www.ioug.org上的独立Oracle用户组(Independent Oracle User GroupIOUG)。

SQL Server

Microsoft SQL Server的官方网站是http://www.microsoft.com/sql/。另外一个不错的资源来源是SQL Server专业协会(Professional Association for SQL ServerPASS)的主页http://www. sqlpass.org

 数据库系统标准语言的必然选择——SQL (http://blog.csdn.net/bvbook/archive/2009/10/30/4746961.aspx

 

抱歉!评论已关闭.