您的位置:首页 > 数据库

DB2 命令行中如何执行sql脚本

2012-06-05 11:07 471 查看
原文链接:http://space.itpub.net/8231934/viewspace-584635

db2 => connect to dbName user xxx using password

db2 => sql语句

如果要执行一个sql脚本文件:

db2 => quit

c:\> db2 -tvf sql文件名

db2 -td@ -f filename

@是语句结束符。

E:\>db2 ? options

db2 [option ...] [db2-command | sql-statement |

[? [phrase | message | sqlstate | class-code]]]

option:-a、-c、-e{c|s}、-finfile、-lhistfile、-n、-o、-p、-rreport、-s、-t、

-td;、-v、-w、-x 和 -zoutputfile。

选项 描述 缺省设置

------ ---------------------------------------- ---------------

-a 显示 SQLCA OFF

-c 自动落实 ON

-e 显示 SQLCODE/SQLSTATE OFF

-f 读取输入文件 OFF

-l 将命令记录到历史文件中 OFF

-n 除去换行字符 OFF

-o 显示输出 ON

-p 显示 db2 交互式提示符 ON

-r 将输出报告保存到文件 OFF

-s 在命令出错时停止执行 OFF

-t 设置语句终止字符 OFF

-v 回送当前命令 OFF

-w 显示 FETCH/SELECT 警告消息 ON

-x 不打印列标题 OFF

-z 将所有输出保存到输出文件 OFF

注意:

使用 DB2OPTIONS 环境变量定制选项缺省值。

紧跟选项字母后的减号(-)使该选项关闭。

使用 UPDATE COMMAND OPTIONS 更改选项设置(以交互式或

文件输入方式)。

只能提供nt环境下编写脚本的例子给你以供参考:

脚本样例:

db2 connect to yourdb user yourname using yourpassword

db2 insert into newuser(username,password,email) values('Amy','1234','Amy@ss.com')

db2 insert into newuser(username,password,email) values('Judy','1234','Judy@ss.com')

db2 commit

db2 disconnect yourdb

运行脚本: 运行db2cmd X:\XXX.bat

以下摘自本论坛的FAQ可参考:

"

在命令窗口中运行DB2脚本,可用 db2 -svtf 脚本文件名 来实现。

例如,脚本文件名为sample.sql,运行:db2 -svtf sample.sql

参数中:

s 代表遇到错误时中止运行脚本

v 代表输出结果到屏幕

t 指以;号作为每行的分隔符

f 指后面需跟脚本文件名 "---此摘录版权归斑竹非本人所有

具体在AS400如何编写脚本非常遗憾.

db2 -x select SERIALNO from tabname where clause

C:>db2 attach to db2164 user ccp

输入 ccp 的当前密码:

实例连接信息

实例服务器 = DB2/NT 8.2.0

授权标识 = CCP

本地实例别名 = DB2164

C:>db2 connect to dw164 user ccp

输入 ccp 的当前密码:

数据库连接信息

数据库服务器 = DB2/NT 8.2.0

SQL 授权标识 = CCP

本地数据库别名 = DW164

C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur

CUST_ID NOW_PRED_S LOAD_TIME

-------------------- -------------------- --------------------------

3094736. ZFS 2008-05-07-10.02.00.453000

3145886. ZFS 2008-05-07-10.02.00.453000

2 条记录已选择。

C:>db2 list command options

命令行处理器选项设置

后端进程等待时间(秒) (DB2BQTIME) = 1

连接至后端的重试次数 (DB2BQTRY) = 60

请求队列等待时间(秒) (DB2RQTIME) = 5

输入队列等待时间(秒) (DB2IQTIME) = 5

命令选项 (DB2OPTIONS) = +m

选项 描述 当前设置

------ ---------------------------------------- ---------------

-a 显示 SQLCA OFF

-c 自动落实 ON

-d 检索并显示 XML 声明 OFF

-e 显示 SQLCODE/SQLSTATE OFF

-f 读取输入文件 OFF

-i 显示 XML 数据并带有缩进 OFF

-l 将命令记录到历史记录文件中 OFF

-m 显示受影响的行数 OFF

-n 除去换行字符 OFF

-o 显示输出 ON

-p 显示交互式输入提示符 ON

-q 保留空格和换行符 OFF

-r 将输出保存到报告文件 OFF

-s 在命令出错时停止执行 OFF

-t 设置语句终止字符 OFF

-v 回传当前命令 OFF

-w 显示 FETCH/SELECT 警告消息 ON

-x 不打印列标题 OFF

-z 将所有输出保存到输出文件 OFF

C:>db2set DB2OPTIONS=-x

C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur

4654908. ZFS 2008-05-07-10.02.00.453000

3716687. ZFS 2008-05-07-10.02.00.453000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: