DB2 CLP

lemonlili發表於2009-10-02

CLP command line processor:

可以使用CLP 執行如下命令:

SQL語言

XQUERY 查詢語言

DB2 命令

OS 命令

Db2 “ select * from

Syscat.table” 使用做連字元。

Db2 ?

Db2 ?command :db2? Export

Db2? Sqlnnnn: db2 ? sql3185(sqlcode)

Db2? Nnnnn (sqlstate)

非互動模式

Db2 connect to testdb

Db2 “select * from syscat.tables”|more (“ 一般在UNIX平臺需要,尤其是語句中有*等特殊字元)

互動模式

Db2

Db2=> connect to testdb

Db2=>select * from syscat.tables

在互動模式下不可以執行OS管道命令象非互動模式那樣,但是可以在db2=>! 加!來執行OS命令例如db2=>!ls

Db2=>h

db2 => h r

3 hr

2 h

1 !ls

db2 => h

1 !ls

2 h

3 hr

4 hr

db2 => h r 4

6 h

7 !ls

8 h r

9 h

10 h 4

可以在db2=>e來編輯以前執行過的命令。例如db2=>e 5 編輯第5個命令

同樣還可以使用db2=>rRUN以前執行過的命令 例如db2=>r 5就是以前第5個執行過的命令。

在執行XQUERY的時候語句的字首應該加XQUERY

在輸出的情況下NULL CLP 裡顯示為“-”,數字顯示的時候從右側對齊。非數字左側對齊。

Db2 connect to dbname

Db2 set client connect 1|2

Db2 connect reset

如果 connect 1 DB2DBDFT環境變數設定後 db2 connect reset 發出後終止當前連線自動連線到 DB2DBDFT指定的資料庫上

如果 connect 2 時當前連線進入休眠狀態,然後連線到default database上。

Db2 terminate

終止當前連線,結束後臺程式

Quite

Db2=>connect to testdb

Db2=>quit

Db2 select count(*) from syscat.tables;

不結束後臺程式也不終止連線。

Db2 list command options

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.

Option Description Default Setting

------ ---------------------------------------- ---------------

-a Display SQLCA OFF

-c Auto-commit ON

-e Display SQLCODE/SQLSTATE OFF

-f Read from input file OFF

-l Log commands in history file OFF

-n Remove new line character OFF

-o Display output ON

-p Display db2 interactive prompt ON

-r Save output report to file OFF

-s Stop execution on command error OFF

-t Set statement termination character OFF

-v Echo current command OFF

-w Display FETCH/SELECT warning messages ON

-x Suppress printing of column headings OFF

-z Save all output to output file OFF

Notes:

Use the DB2OPTIONS environment variable to customize option defaults.

An option takes on the opposite value if the minus sign (-) is changed to a

plus (+).

Use UPDATE COMMAND OPTIONS to change option settings in interactive or

file input mode.

D:>db2 -a select count(*)from syscat.tables

1

-----------

3534

1 條記錄已選擇。

SQLCA 資訊

sqlcaid : SQLCA sqlcabc: 136 sqlcode: 0 sqlerrml: 0

sqlerrmc:

sqlerrp : SQLRI01F

sqlerrd : (1) -2147221503 (2) 1 (3) 0

(4) 0 (5) 0 (6) 0

sqlwarn : (1) (2) (3) (4) (5) (6)

(7) (8) (9) (10) (11)

sqlstate: 00000

D:>db2 -ec select count(*)from syscat.tables

1

-----------

3534

1 條記錄已選擇。

0

D:>db2 -es select count(*)from syscat.tables

1

-----------

3534

1 條記錄已選擇。

00000

Db2 –l r.txt select count(*) from syscat.tables

2009-10-01 20:16:23 select count(*)from syscat.tables

2009-10-01 20:16:23 DB20000I SQL 命令成功完成。

Db2 –r rp.txt select count(*) from syscat.tables

1

-----------

251

1 條記錄已選擇。

D:>db2 -x select count(*)from syscat.tables

251

CLP 2個程式組成一個是前臺程式一個是後臺程式他們之間透過三個佇列進行互動:請求佇列,輸入佇列,輸出佇列。

DB2BQTIME:當前臺程式去檢查後臺程式的狀態時候,發現後臺程式不可用那麼它將SLEEP DB2BQTIME指定時間後繼續檢查。

DB2BQTRY 當前臺程式檢查到DB2BQTRY 指定的次數後,如果後臺程式還不可用,則去啟用後臺程式。

DB2RQTIME:指出後臺程式等在請求佇列待響應前臺程式的時

DB2IQTIME:指出後臺程式在輸入佇列上等待前臺程式的時間。

Db2 –r select count(*) from syscat.tables

Db2 –stvf create.sql
db2 +c update staff set salary=salary+100

db2 => update command options using x on

DB20000I UPDATE COMMAND OPTIONS 命令成功完成。

db2 => select * from staff

10 Sanders 20 Mgr 7 18357.50 -

20 Pernal 20 Sales 8 18171.25 612.45

DB2CA

使用DB2CA 配置網路時候如果採用SEARCH

DB2 GET DBM CFG

(DISCOVER) = SEARCH

(DISCOVER_INST) = ENABLE

DAS

DB2 ADMINISTRATION SERVER 協助管理控制DB SERVER,如果你要使用CCTCDC等工具就要配置DAS

1. 可以實現DB SERVER的遠端管理。

2. 提供JOB管理,定期RUN DB2OS 命令或指令碼。

3. 提供發現 INSTANCEDATABASE,其他DAS的一種方法 DB2 GET ADMIN CFG SEARCH

每一個機器上只能有一個DAS

DAS is used to perform remote tasks on the server system and the host system on behalf

of a client request from the Control Center, the Configuration Assistant, or any of the other

available tools.

建立DAS

UNIX上使用dascrt –u dasuser (root)

/opt/ibm/db2/v9.5/instance/dascrt

WINDOWS

Db2admin create

WINDOWS 下必須是超級使用者

UNIX下使用者必須屬於DASADMIN_GROUP組的使用者 db2 get admin cfg(db2inst 加到此組)

停止:

Db2admin stop

啟動:

Db2admin start

檢視:

Db2admin

檢視配置資訊:

Db2 get admin cfg

更新配置資訊:

Db2 update dbm cfg using ***

刪除DAS

1. Db2admin stop

2. Db2admin drop (windows) dasdrop dasname(UNIX root)

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8188536/viewspace-1027570/,如需轉載,請註明出處,否則將追究法律責任。