DB2 SQL腳本批量執(zhí)行的實現過程
DB2 SQL腳本批量執(zhí)行是我們在使用DB2數據庫時經常要用到的操作,那么DB2 SQL腳本批量執(zhí)行應該如何實現呢?閱讀下文,您就可以找到答案。
DB2 SQL腳本批量執(zhí)行:
環(huán)境:
Windows系統
DB2客戶端或者服務端
一、準備工作
運行db2cmd或者db2cw打開DB2命令行處理器
進入SQL腳本存放目錄
用db2 connect to <dbname> user <username> using <password> 命令連接數據庫
用db2 set current schema <schema_name> 設置當前的SCHEMA,這個SCHEMA可以是未創(chuàng)建的,DB2會自動創(chuàng)建。
二、執(zhí)行不同類型的SQL
1、在命令行執(zhí)行簡單SQL命令
db2 <SQL語句內容>
2、在命令行執(zhí)行SQL腳本文件
db2 -td; -cf <SQL腳本文件路徑> -l <輸出日志文件路徑>
說明:-td; 指定語句結束標志。因為一般SQL都是以分號結尾,所以就寫成“-td;”。
-l <輸出日志文件路徑>  是可選的。
3、在命令行執(zhí)行DB2 存儲過程文件
db2 -td@ -f <SQL過程文件路徑> -l <輸出日志文件路徑>
說明:-td; 指定語句結束標志。因為一般SQL過程都是以@結尾,所以就寫成“-td@”。
-l <輸出日志文件路徑>  是可選的。
三、寫批處理腳本
批處理腳本無非就是把命令寫在一起,保存為bat文件,執(zhí)行即可。
在寫批處理之前,先回顧一下DB2命令選項:
C:\IBM\SQLLIB\BIN>db2 ? options
db2 [option ...] [db2-command | sql-statement |
[? [phrase | message | sqlstate | class-code]]]
option:-a、-c、-d、-e{c|s}、-finfile、-i、-lhistfile、-m、-n、-o、
-p、-q、-rreport、-s、-t、-td;、-v、-w、-x 和 -zoutputfile。
選項    描述                                      缺省設置
------  ----------------------------------------  ---------------
-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    顯示 db2 交互式提示符                     ON
-q    保留空格和換行符                          OFF
-r    將輸出報告保存到文件                      OFF
-s    在命令出錯時停止執(zhí)行                      OFF
-t    設置語句終止字符                          OFF
-v    回傳當前命令                              OFF
-w    顯示 FETCH/SELECT 警告消息                ON
-x    不打印列標題                              OFF
-z    將所有輸出保存到輸出文件                  OFF
注意:
使用 DB2OPTIONS 環(huán)境變量定制選項缺省值。
緊跟選項字母后的減號(-)使該選項關閉。
使用 UPDATE COMMAND OPTIONS 更改選項設置(以交互式或
文件輸入方式)。
根據命令參數創(chuàng)建批處理文件xxx.bat:
rem     -- 連接數據庫
db2 connect to <dbname> user <username> using <password>
rem     -- 設置SCHEMA
db2 set current schema <schema_name>
rem     -- 執(zhí)行SQL腳本列表
db2 -td; -cf <SQL腳本文件路徑> -l <輸出日志文件路徑>
rem     -- 執(zhí)行SQL過程列表
db2 -td@ -f <SQL過程文件路徑> -l <輸出日志文件路徑>
注意:<SQL過程文件路徑>可以是絕對路徑也可以是相對路徑。
四、執(zhí)行批處理
運行db2cmd或者db2cw打開DB2命令行處理器。
如果<SQL過程文件路徑>和<SQL腳本文件路徑>為絕對路徑,則可以直接命令行執(zhí)行 xxx
如果<SQL過程文件路徑>和<SQL腳本文件路徑>為相對路徑,則需要進入適當的目錄,一邊能在此目錄下找到批處理,然后執(zhí)行 xxx
【編輯推薦】















 
 
 
 
 
 
 