代码改变世界

批处理bat中执行db2语句

2014-03-31 15:39  Digging4  阅读(1310)  评论(0编辑  收藏  举报

文章http://machunlin.iteye.com/blog/1114132 介绍了在bat中执行db2语句

 

-----------------------------文章内容-------------------------

有时候我们需要执行一些预先写好的,按顺序执行的sql语句,比如数据归档,导入导出等操作,于是就有了.bat的用武之地。

 

例子1:

    在.bat文件中调用.sql文件

    A. 创建select.sql

        connect to ksccs user ksccs using cvicse;
        select count(*) from beps_wastebook2;
        connect reset;

 

    B. 创建db2_select.bat,内容如下:

        @echo off
        echo ###调用生成的文件操作数据库### 
        db2cmd db2 -tf "select.sql"

   

    C.执行.bat

 

例子2:在.bat中执行sql:

    A. 创建db2_called.bat

         @echo off

         echo ###直接用sql语句###
         db2 connect to ksccs user ksccs using cvicse
         db2 select count(*) from beps_wastebook1
         db2 connect reset
         pause

    B.  创建db2_cw.bat

         @echo off
         db2cw db2_called.bat
         pause

     C. 执行db2_cw.bat

 

 

-----------------------------本人实验------------------------------------

三个文件在同一目录中

文件1:import.sql  保存有要执行的sql

--连接数据库

connect to ZJDW_115 user username using password;

--导入语句

import from 'accs_nbr.txt' of del        --数据文件为accs_nbr
  modified by coldel0x09 nochardel       --指定数据文件的字段分割方式为tab
  commitcount 1000                              --1000行提交一次
  insert into app_a.yl_test_20111130(seq,asset_row_id);  --指定导入的表,括号里是字段

 

文件2:accs_nbr.txt 数据文件,字段之间用tab分割  如:

1 1-RLJC2I
2 1-RLSKE0
3 1-34GQ5NX

 

文件3:import.bat  批处理文件,执行操作

@echo off
echo ###调用生成的文件操作数据库### 
db2cmd db2 -tf  import.sql