DB2UDB 命令行工具
DB2UDB 命令行工具是DB2UDB 的组件,这些工具支持对DB2命令以及 SQL 语句的处理。在Windows 上可使用三种命令行工具:
DB2命令中心(Command Center)
DB2命令行处理器(CLP)
DB2命令窗口
您可以通过单击Start -> Programs -> IBM DB2-> Command Line Tools到这些工具。
DB2命令中心
第一个命令行工具是DB2命令中心(图1),它提供一个处理命令和SQL 语句的GUI。您可以用交互方式或脚本(批处理)方式工作,或者将两种方式结合使用。通过单击Start -> Programs -> IBM DB2-> Command Line Tools -> Command Center
启动DB2命令中心。
图  1. DB2命令中心
图1是DB2命令中心的抓屏。在本例中,我们导入了如清单1所示的样本DB2备份脚本。您可以通过从Sc
ript菜单选择Import来导入脚本。db2数据库sql语句
DB2命令行处理器(CLP)
一般而言,可以把DB2命令行处理器(CLP)当作用于调用DB2命令的DB2提示符DB2=>,就象Windows 命令提示符 C:用于调用操作系统命令一样。也可以从任一DB2命令行工具调用DB2系统命令(稍后讨论)和操作系统命令,只要在命令前加一个感叹号!即可。
图2显示了DB2CLP 以及关于如何获取DB2命令帮助的一些基本信息。单击Start -> Programs -> IBM DB2-> Command Line Tools -> Command Line Processor,启动DB2CLP。
图  2. DB2命令行处理器
要了解有关DB2UDB V8.1 中DB2CLP 新增功能的更多信息,请阅读Paul C. Zikopoulos 撰写的DB2开发者园地文章定制DB2通用数据库命令行处理器。
DB2命令窗口
您可以把DB2命令窗口看成一个DB2shell(),它扩展Windows shell ()以提供对DB2命令和SQL 语句的支持。在DB2命令窗口中输入的命令必须是以大写、小写或大小写结合的DB2开头。操作系统命令(如dir)直接被传递到Windows shell(),不需要感叹号(!)。
DB2CLP 与DB2命令窗口的主要区别在于CLP 提供DB2命令提示符DB2=>,而DB2命令窗口提供 Windows 命令提示符,DB2命令和操作系统命令都可以在其中输入。在Windows 上用 DB2命令窗口可以最有效地执行DB2UDB 脚本编制,因为它方便地支持对SQL 语句、DB2命令、DB2系统命令和操作系统命令的调用。
提示:如果您试图从 Windows shell 直接运行DB2命令,您将得到以下错误消息:
DB21061E Command line environment not initialized.
这表明这种shell 不能处理DB2命令。您只需通过输入来启动DB2命令窗口,以初始化命令环境即可。
您可以设置几种选项来更改DB2CLP 的缺省行为。您可以通过输入list command options命令获取这些选项的列表,如图3所示。从DB2命令窗口调用DB2脚本最常用的几个选项将在下面的示例中演示。
图3. DB2命令窗口和选项
有关使用DB2CLP 编制SQL 和DDL 语句脚本的更多信息,请阅读Blair Adamache 撰写的DB2开发者园地文章DB2的命令行处理器和脚本编制。DB2命令选项在
DB2UDB Command Reference 中也有详细的文档记录。
尽管DB2脚本可以包含 SQL 语句、DB2系统命令和操作系统命令,但它只是有一个或多个DB2命令的文本文件。虽然不是必需的,但通过使用适当的文件扩展名形成一个标准的DB2脚本命名约定通常是个很好的方法。表1显示了几种最常用的文件扩展名。
表1. 脚本的常用文件扩展名
文件扩展名描述
.db2 包含DB2命令的DB2脚本
.ddl 包含数据定义语言(DDL)语句的DB2脚本
.sql 包含SQL 语句的DB2脚本
作为说明之用,清单1包含一个非常简单的DB2脚本,该脚本使用数个DB2命令备份sample 数据库。可
以从任一DB2命令行工具执行该脚本。本文中用到的全部脚本都可以下载。这些脚本使用缺省的DB2实例(DB2)和样本数据库(SAMPLE)。其中的一些脚本将要求您安装Windows 资源包(Windows Resource Kit)。
清单  1. 备份sample 数据库的样本DB2脚本(db2backup.db2)
--
-- This is a sample DB2Backup Script
--
ATTACH TO DB2;
BACKUP DATABASE SAMPLE;
DETACH;
TERMINATE;
您可以使用以下语法从DB2命令窗口执行以上DB2脚本:
db2 -tvf db2backup.db2 -l db2backup.log -r db2backup.rpt
在上面的示例中,使用了以下DB2命令选项来执行DB2脚本文件(db2backup.db2):
-t 指明在缺省情况下用分号(;)终止每条命令
-v 指明应将每条命令显示到标准输出
-f 指明从输入文件读取命令
-l 指明将命令记录到输出文件中
-r 指明将结果保存到报告文件中
使用-l选项将所有DB2命令记录到日志文件(db2backup.log)并且使用-r选项将命令的输出保存到报告文件(db2backup.rpt),这始终是一个很好的方法。这两个选项的区别在于:
-l选项记录每条命令的开始和结束并记录日期和时间
-r选项将每条命令的输出保存到文件中。
同时使用这两个选项可以让您利用报告文件查看脚本的执行摘要,并利用日志文件查看每条命令的详细信息。
也可以从Windows shell 调用DB2命令窗口本身,只需从 Windows shell(命令提示符)输入db2cmd即可。它有一些有用的开关,可以在调用它时向它传递这些开关。表2描述了这些选项:
表2. DB2命令窗口的选项
开关描述
-c 执行DB2命令窗口,然后终止。
-w 一直等到DB2命令窗口终止。
-i 从进行调用的shell 继承环境。
-t 从进行调用的 shell 继承标题。
通过首先调用DB2命令窗口,您可以从任一 Windows shell 执行清单1中的脚本,如下面的示例所示:
db2cmd -c -w -i db2 -tvf db2backup.db2 -l db2backup.log -r db2backup.rpt DB2命令窗口提供所执行的
每条命令的返回码。表3列出了返回码。
表3. DB2CLP 返回码

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。