IBM DB2 資料庫使用小技巧

來源:互聯網
上載者:User
1.   查看本地節點目錄
    命令視窗中輸入:db2   list   node   directory

2.   編目一個TCP/IP節點
    命令視窗:db2   catalog   tcpip   node   <node_name>   remote   <hostname|ip_address>   server   <svcname|port_number>   ostype   <OS2|AIX|WIN95|NT|HPUX|SUN|MVS|OS400|VM|VSE|SCO|SGI|LINUX|DYNIX>

3.   取消節點編目
    db2   uncatalog   node   <node_name>

4.   查看系統資料庫目錄
    db2   list   database   directory

5.   查看本機資料庫目錄
    db2   list   database   directory   on   <盤符>
    在本機資料庫目錄中有而系統資料庫目錄中沒有的資料庫不能訪問,可以在控制中心中選中 <資料庫> 按右鍵選擇添加,然後輸入需要添加的資料庫名稱或者點擊重新整理按鈕選擇資料庫,加入資料庫後即可以訪問。

6.   編目資料庫
    db2   catalog   database   <db_name>   as   <db_alias>   at   node   <node_name>

7.   取消資料庫編目
    db2   uncatalog   database   <db_name>

8.   測試遠端資料庫的串連
    db2   connect   to   <db_alias>   user   <user_id>   using   <password>

9.   任何使用者均可通過設定Current   Schema專用寄存器為特定的資料庫連接設定預設模式,初始預設值為當前會話使用者的許可權ID。
    set   schema   =   <schema   name>
    可以由使用者互動使用,也可在應用程式中使用,如果用Dynamicrules   Bind選項綁定包,這個語句就沒有作用。此語句不在事務控制之下。

10.   字碼頁的設定
    在建立資料庫時設定字元集
    create   database   <db_name>   using   codeset   <codeset>   territory   <territiry>
    例:
    create   database   dbtest   using   codeset   IBM-437   territory   US
    也可以設定整個資料庫的字碼頁,在win2000/NT/xp中,在我的電腦--> 屬性--> 進階--> 環境變數中添加變數DB2CODEPAGE   =   <codepage> ,例:DB2CODEPAGE   =   437   或   DB2CODEPAGE   =   1386。或者在IBM   DB2命令視窗輸入   db2set   DB2CODEPAGE=1386,設定後需要重新啟動DB2生效。

11.   DB2低版本資料到高版本的遷移
    先將低版本資料備份使用恢複功能匯入高版本資料庫,然後在命令視窗輸入   db2   migrate   database   <db_name> 。

12.   表名或模式中含有引號時訪問表
    命令視窗:db2   select   *   from   \ "tabschema\ ".\ "tabname\ "
    命令列處理器:db2=>   select   *   from   "tabschema ". "tabname "

13.   匯出資料庫的表結構產生DDL檔案
    命令視窗:db2look   -d   <db_name>   -e   -c   -o   <file_name>
   
14.   執行指令檔
    命令視窗:db2   -tvf   <file_name>
   
15.   字碼頁的轉換

16.   擷取當前DB2的版本
    select   *   from   sysibm.sysversions

17.   DB2表的欄位的修改限制?
    只能修改VARCHAR2類型的並且只能增加不能減少
    alter   table   <tb_name>   alter   column   <col_name>   set   data   type   varchar(SIZE)

18.   如何查看錶的結構?
    describe   table   <tb_name>
    or
    describe   select   *   from   <schema> . <tb_name>

19.   如何快速清除一個大表?
    ALTER   TABLE   TABLE_NAME   ACTIVE   NOT   LOGGED   INITALLY   WITH   EMPTY   TABLE

20.   如何查看資料庫的預存程序?
    SELECT   *   FROM   SYSCAT.PROCEDURES

21.   如何查看錶的約束?
    SELECT   *   FROM   SYSCAT.CHECKS   WHERE   TABNAME   =   <tb_name>

22.   如何查看錶的引用完整約束?
    SELECT   *   FROM   SYSCAT.REFERENCES   WHERE   TABNAME   =   <tb_name>

23.   如何知道BUFFERPOOLS狀況?
    select   *   from   SYSCAT.BUFFERPOOLS

24.   如何在命令列下查看修改執行個體和資料庫配置參數?
    查看執行個體配置參數:       db2   get   dbm   cfg
    修改執行個體配置參數:       db2   update   dbm   cfg   using   參數名   新值

    查看資料庫配置參數:       db2   get   db   cfg   for   <db_name>
    修改資料庫配置參數:       db2   update   db   cfg   for   <db_name>   using   參數名   新值

25.   如何修改緩衝區?
    增加緩衝區:       create   bufferpool   <buf_name>   size   <number   of   pages>   [pagesize   4096]   {[not]   EXTENDED   STORAGE}
    修改緩衝區:       alter   bufferpool   <buf_name>   size   <number   of   pages>   {[not]   EXTENDED   STORAGE}
    刪除緩衝區:       drop       bufferpool   <buf_name>

    如果緩衝區大小設定為   -1   表示緩衝池的頁面數目由資料庫配置參數buffpage決定。
    注意:   資料庫配置參數buffpage僅對緩衝區大小設定為   -1   的緩衝池起作用。

26.   多個欄位時如何不通過使用select子句使用in/not   in
    select   *   from   tabschema.tabname   where   (colA,   colB,   colC)   [not]   in   (values   (valueA1,   valueB1,   valueC1),   (valueA2,   valueB2,   valueC2),   ...(valueAn,   valueBn,   valueCn))

27.   查看當前串連到資料庫的應用
    db2   list   application   [show   detail]

28.   如何確認DB2資料庫的一致性
    db2dart   <db_name>   /DB
    /DB表示檢查整個資料庫的一致性

29.   測試SQL語句的效能
    db2batch   -d   <db_name>   -f   <file_name>   [-a   userid/passwd]   [-r   <outfile_name> ]
    -r   選項表示將查詢結果輸出到一個檔案中。
30.   匯出某個表的資料
    export   to   <Derectry> <filme>
如:匯出使用者表
    export   to   c:\user.ixf   of   ixf   select   *   from   user

31.   匯入資料
    import   from  

如:匯入使用者表。匯入時可以直接建立新表。如果有該表存在也可以用INSERT   插入,或者用UPDATE更新

原文地址:http://tech.it168.com/a2008/0729/198/000000198861.shtml

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.