程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> 輕松掌握IBM DB2數據庫的31個使用技巧

輕松掌握IBM DB2數據庫的31個使用技巧

編輯:DB2教程

1.查看本地節點目錄

命令窗口中輸入:

 

db2   list   node   directory

 

 

 

2.編目一個TCP/IP節點

命令窗口:

 

db2   catalog   tcpip   node   <node_name>   
remote   <hostname &brvbar;ip_address>   server   
<svcname &brvbar;port_number>   ostype   <OS2 &brvbar;
AIX &brvbar;WIN95 &brvbar;NT &brvbar;HPUX &brvbar;
SUN &brvbar;MVS &brvbar;OS400 &brvbar;
VM &brvbar;VSE &brvbar;SCO &brvbar;SGI &brvbar;
Linux &brvbar;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 = 可以由用戶交互式的使用,也可在應用程序中使用,假如用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 = ,例: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   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更新。

執行導入:

 

import   from   c:\user.ixf   of   ixf   
[Create/Insert   into   /   update]   tablename
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved