开始之前
本教程为您讲解高级 SQL 和基本 XQuery 话题的基础知识,并展示如何使用 SQL 查询或 XQuery 语句来表达常被问起的业务问题。开发人员和数据库管理员可以使用本教程来提高他们的数据库查询技能。Academic Initiative 成员可以使用本教程系列作为他们数据库课程的一部分。
本文中的所有例子都基于 Aroma,这是一个示例数据库,其中包含了在美国各地的商店中出售的咖啡和茶用品的销售数据。每个例子由以下三部分组成:
- 以日常用语表达的一个业务问题
- 以 SQL 或 XQuery 表达的一个或多个例子查询
- 显示从数据库返回的一个结果表
本指南是为了让读者学习 SQL 语言和 XQuery 而设计的。与学习任何东西一样,重要的是一边学习一边实践。本指南给出的表定义和数据为此提供了便利。
对于使用本指南作为学校课程一部分的学生而言,他们应该向老师学习连接到 Aroma 数据库的说明,并了解本指南与您本地设置的不同之处。
本系列是针对 DB2 Express-C 9 for UNIX®, Linux® and Windows®(曾用名 Viper)而编写的。
本教程介绍 Aroma 数据库,特别是零售群表、表定义、示例数据和表之间的关系。
创建这些表是为了展示这样一种环境:
- 有为数不多的几个表
- 列名使用分析者的词汇
- 列反映业务的自然维度
这是一个典型的、使用星型模式的数据仓库。另一种类型的数据库是在线事务处理(Online Transaction Processing,OLTP)数据库。OLTP 数据库包含最细粒度级别的事务。
本教程还介绍 SQL 的基础知识,并推荐能用 IBM DB2 9 来回答的一些典型的业务问题。
为了能够更好地利用本教程,应该安装 IBM DB2 9。请下载 DB2 Express-C,这是为社区提供的免费版本的 DB2 Express Edition,它具有与 DB2 Express Edtion 相同的核心数据特性,并且能为构建和部署应用程序提供一个坚实的基础。另外还需要安装 Aroma 数据库,这个数据库可以从 这里 下载。
要安装 DB2 9,可遵循以下步骤(如果没有特别说明,则使用默认选项):
- 进入到包含所下载文件 - db2exc_91_WIN_x86.zip 的文件夹(假设这个文件被下载到 C:\DownloadDirector 文件夹中)。
- 解压该文件。
- 在解压得到的文件夹中找到 setup.exe,然后双击它。随之将出现 DB2 Setup Launchpad。
- 在 DB2 Setup Launchpad 中,单击左侧面板上的 Install a Product。
- 单击 DB2 Express 下的 Install New。
- 在安装程序中,单击 Next 查看 License Agreement。要继续安装,应该单击 Accept 接受协议,然后单击 Next。
- 选择 Typical 安装方式,然后单击 Next。
- 确认您打算 “Install DB2 Universal Database Express Edition on this computer and save my settings in a response file”(在这台计算机上安装 DB2 Universal Database Express Edition,并将设置保存在一个响应文件中),然后单击 Next。
- 检查安装目录,然后单击 Next。
- 在 “Configure DB2 instances” 屏幕中,单击 Next。
- 在 “User Information” 屏幕中,使用下拉菜单将 Domain 设置为 None -- use local user account,使用 db2admin 作为 User name,并设置一个密码。
(或者,也可以选择 LocalSystem 账户,但是如果使用该选项,会遇到一些限制。请单击 Help 按钮了解更多信息。) - 确保复选框 Use the same user name and password for the remaining DB2 services 被选中,然后单击 Next。
- 单击 Next 忽略 “Prepare the DB2 tools catalog” 屏幕。
- 为简化安装,取消对 Set up your DB2 server to send notifications 的选择,然后单击 Next。
- 确认复选框 Enable operating system security checkbox 被选中。保留 DB2 administrators group 的默认值 DB2ADMNS,同时也保留 DB2 users group 的默认值 DB2USERS。单击 Next。
- 当进入 “Start copying files and create response file” 屏幕时,单击 Finish 开始 DB2 产品的安装。
- 当安装结束时,会弹出一个包含 “Setup is complete” 消息的窗口。单击 Finish 完成安装过程。
- 这时将出现一个标题为 “DB2 First Steps” 的窗口。单击 Create profile。您的 Web 浏览器将打开一个名为 DB2 First Steps 的页面。这个教程包含很多关于 DB2 信息的有用链接,不过本教程不会用到这个页面。关闭 Web 浏览器。
- 确保 DB2 Express-C 9 已经安装。
- 选择 Start menu ==> all Programs ==> IBM DB2 ==> Command Line Tools ==> Command Window 启动 Command Window。
- 在 Command Window 中执行 create_aroma.bat。
注意:别忘了先使用cd命令进入到这个批文件所在的目录。 - 这样将创建 create.txt 和 report.txt 这两个文件。编辑 report.txt 文件,并与下面预期的结果相比较:
TABLE RECORDS
--------------------- -----------
aroma.class 9
aroma.deal 9
aroma.line_items 182
aroma.market 17
aroma.orders 27
aroma.period 821
aroma.product 59
aroma.promotion 194
aroma.sales 69941
aroma.store 18
aroma.supplier 9
本系列的第 7 部分将介绍 XML 和基本的 XQuery 查询。为了支持 XML,aromadb 数据库是用下面的语句创建的:
db2 create db aromadb using codeset utf-8 territory us |
注意,该语句指定 UTF-8 作为这个数据库的编码集。XML 特性只能用于以编码集 UTF-8 定义的只有一个数据库分区的数据库。将来您在创建自己的数据库时别忘了包括这个参数,否则您的数据库将不支持 XML 特性!


