ITPub博客

首页 > Linux操作系统 > Linux操作系统 > DB2 命令行中执行sql脚本

DB2 命令行中执行sql脚本

原创 Linux操作系统 作者:yuanqingyu0123 时间:2009-04-04 11:44:48 0 删除 编辑

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



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


__________________
天下莫大于秋毫之未,而太山为小;莫寿乎殇子,而彭祖为夭。天地与我并生而万物与我为一!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~

--------------------------------------------------------
岁月本长,而忙者自促,
天地本宽,而卑者自隘。
风花雪月本闲,而劳忧者自冗;
不妄取,不妄予,不妄想,不妄求,与人方便,随遇而安!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--------------------------------------------------------

 

 

 

 

 

 

 

 

 


 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8231934/viewspace-584635/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-03-10

  • 博文量
    30
  • 访问量
    142874