您可以使用 CLP 運行腳本,任何可以以常規操作處理的方式運行的實用程序(例如每夜運行的 LOAD、RUNSTATS 或者 BACKUP 命令),都可以是一個 CLP 腳本。CLP 的一些選項可以指定輸入文件(-f),一個用於消息的輸出文件(-z),是否能夠回送關於什麼要在屏幕上運行的信息(-v),是否能夠設置一個語句終止符(-t),如果設置了這個選項,腳本就可以包含多個 DB2 命令 和 SQL 語句。通常我會這樣運行腳本:DB2 -tvf filename.ddl -t,後面加上默認的終止符(;),-v 選項允許回送文件的內容到屏幕(這樣就可以檢查我告訴了 DB2 要做些什麼),-f 選項告訴 CLP 使用一個輸入文件。通過 DB2 ? options可以得到關於所有選項的幫助:
C:\\SQLLIB>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 |
在 DB2 ControlCenter 中的腳本中心那裏提供了更加高級的腳本編寫,包括時間安排(scheduling),並且可以使用日誌來查看發生過什麼事情。在原型(prototyping)模式下,CLP 只是一種啓動程序的快速方式。注意上述輸出中的 -x 選項:我們添加了這個能力,以便可以在 DB2 v7 的 fixpak 1 中不輸出列標題。如果客戶要求輸出列標題,他們可能是關心列標題,因爲他們希望輸出好看一些(或者要將輸出作爲另一個程序的輸入)。對於我來說,這意味着人們現在 將 CLP 不僅僅用於原型。
總結:db2 +options - 關閉option功能
db2 -options - 開啓option功能