1. 怎樣使用命令行執行DB2的SQL
一、准備工作
運行db2cmd或者db2cw打開DB2命令行處理器
進入SQL腳本存放目錄
用db2 connect to <dbname> user <username> using <password> 命令連接資料庫
用db2 set current schema <schema_name> 設置當前的SCHEMA,這個SCHEMA可以是未創建的,DB2會自動創建。
二、執行不同類型的SQL
1、在命令行執行簡單SQL命令
db2 <SQL語句內容>
2、在命令行執行SQL腳本文件
db2 -td; -cf <SQL腳本文件路徑> -l <輸出日誌文件路徑>
說明:-td; 指定語句結束標志。因為一般SQL都是以分號結尾,所以就寫成「-td;」。
-l <輸出日誌文件路徑> 是可選的。
3、在命令行執行DB2 存儲過程文件
db2 -td@ -f <SQL過程文件路徑> -l <輸出日誌文件路徑>
說明:-td@ 指定語句結束標志。因為一般SQL過程都是以@結尾,所以就寫成「-td@」。
-l <輸出日誌文件路徑> 是可選的。
2. 如何在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','[email protected]')
db2 insert into newuser(username,password,email) values('Judy','1234','[email protected]')
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
3. 如何在Windows CMD裡面用命令行操作DB2資料庫
1、打開電腦,進入電腦操作系統,點擊開始菜單,在電腦開始菜單中,找到命令行cmd,或者使用快捷鍵組合WIN+R鍵可以直接打開運行,輸入cmd命令行,即可直接打開命令行cmd。
4. 如何用db2輸入SQL命令
可以在命令編輯器或者Windows 的DB2 命令窗口或者 linux 的shell 中執行SQL 腳本。在windows 的DB2 命令窗口或者 linux 的shell 中執行SQL語句,可以使用下面的命令執行script1.sql腳本:
db2 -t -v -f script1.sql -z script1.log
或者:
db2 –tvf script1.sql –z script1.log
在上面的命令中,
-t 表示語句使用默認的語句終結符——分號;
-v 表示使用冗長模式,這樣 DB2 會顯示每一條正在執行命令的信息;
-f 表示其後就是腳本文件;
-z 表示其後的信息記錄文件用於記錄屏幕的輸出,方便以後的分析(這是可選的,但建議使用該選項)。
當使用了-t選項而沒有標明語句終結符,則分號(;)會默認為語句的終結符。有時可能會出現使用另外的終結符的情況,例如用SQL PL 編寫的的腳本使用其它的符號而不是默認的分號,因為分號在SQL PL 是用於定義資料庫對象過程中的語句結束。
5. db2 強制重啟命令
如果仍然連接到資料庫,可對所有連接的資料庫分別先運行force application all.
windows上可以直接用控制面板停止相關服務.
linux上直接殺進程.
這些暴力手法可能導致數據損失,如果重要還是先備份或者部分備份重要數據再做.
最後一定可以成功的方法,重新啟動機器.但如殺進程等一樣也有一定風險.反正一定要先確保數據安全然後怎麼做都可以了.
6. 執行DB2的命令有哪些方式
什麼樣的批處理文件?
如果文件裡面都是sql語句,可以在命令行中 db2 -tvf filename即可
如果腳本中包含db2 開頭的提示符,建議做成bat文件來執行
7. DB2安裝過程沒有任何報錯,安裝完成後 db2sampl ,db2cc,db2ca 等命令都找不到
確認db2已正確安裝,並創建實例用戶,測試一把,su - db2isnt1。切換到db2用戶下
db2sample 是創建一個DB2SAMPL樣板庫,一般裝好db2是可以直接運行的
db2cc 是啟動控制中心,一般在客戶端發出該命令即可啟動
db2ca 同上,都是要db2client客戶端支持
8. DB2未初始化命令行環境 怎麼使用命令行運行db2
工具/原料
電腦、window命令行cmd
DB2命令行、db2cmd
電腦已經安裝db2資料庫
方法/步驟
找到命令行cmd
打開電腦,進入電腦操作系統,點擊開始菜單,在電腦開始菜單中,找到命令行cmd,或者使用快捷鍵組合WIN+R鍵可以直接打開運行,輸入cmd命令行,即可直接打開命令行cmd。
進入命令行cmd
通過以上方法,在電腦中找到命令行cmd後,點擊確定或者直接點擊回車鍵,進入命令行cmd的運行程序界面。
3
使用命令行cmd運行db2命令
在電腦中進入命令行cmd後,在命令行cmd中,輸入db2命令後點擊回車,此時可以看到命令行提示DB2未初始化命令行環境,這就是說明,在命令行cmd下面,是不可以直接使用db2命令、不可以直接運行db2命令的。但命令行cmd是識別db2命令的,如果命令行cmd不知別db2命令的話,那麼命令行cmd的提示信息就是:不是內部或外部命令,也不是可運行的程序或批處理文件。
9. 在db2的命令行如何創建存儲過程和函數
1.首先連接資料庫 2.發出一下命令: DB2 -td@ -vf createSQLproc.DB2 createSQLproc.DB2文件中是創建存儲過程的SQL語句; -td 選項讓命令行處理程序使用@作為語句終止字元; -v 選項讓命令處理程序將命令文本回顯到標准輸出; -f 讓命令行處理程序從指定文件讀取命令輸入。
10. 在DB2命令行中什麼命令能查看資料庫所在實例
db2ilist可以查看系統上的所有實例,有一個環境變數可以設置默認啟動的實例。如果是在Lniux或UNIX系統,會存在一個實例用戶,用這個實例用戶連接的實例名與實例用戶名相同。
副本跟實例不是一個概念。一個副本可以理解為一個DB2資料庫產品的安裝,一個系統上可以安裝多個副本,主要是為了在同一個系統上使用多個DB2的版本,比如V8 和 V9。安裝DB2時如果系統里不存在一個叫DB2的實例,則會默認創建名為DB2的實例,如果已經存在,則會創建DB2_01,依此類推