DB2數(shù)據(jù)庫使用的32個小技巧,很實用
此文章主要向同學(xué)講述的是DB2數(shù)據(jù)庫使用的32個小技巧,在翻閱論壇的帖子時,發(fā)現(xiàn)很多同學(xué)苦于手邊沒有一些“小貼士”,所以不得不放下手里的活去查資料,結(jié)果查出結(jié)果了,剛才文思雋永的思路也沒了。
現(xiàn)在分類整理出一些小技巧,希望可以幫助需要幫助的人。那就先從DB2開始吧。
1. 查看本地節(jié)點目錄
命令窗口中輸入:db2 list node directory
2. 編目一個TCP/IP節(jié)點
命令窗口:
- db2 catalog tcpip node remote server ostype
3. 取消節(jié)點編目
- db2 uncatalog node
4. 查看系統(tǒng)數(shù)據(jù)庫目錄
- db2 list database directory
5. 查看本地數(shù)據(jù)庫目錄
db2 list database directory on <盤符>
在本地數(shù)據(jù)庫目錄中有而系統(tǒng)數(shù)據(jù)庫目錄中沒有的數(shù)據(jù)庫不能訪問,可以在控制中心中選中 <數(shù)據(jù)庫> 右鍵單擊選擇添加,然后輸入需要添加的數(shù)據(jù)庫名稱或者點擊刷新按鈕選擇數(shù)據(jù)庫,加入數(shù)據(jù)庫后即可以訪問。
6. 編目數(shù)據(jù)庫
- db2 catalog database as at node
7. 取消數(shù)據(jù)庫編目
- db2 uncatalog database
8. 測試遠(yuǎn)程數(shù)據(jù)庫的連接
- db2 connect to user using
9. 任何用戶均可通過設(shè)置Current Schema專用寄存器為特定的數(shù)據(jù)庫連接設(shè)置默認(rèn)模式,初始默認(rèn)值為當(dāng)前會話用戶的權(quán)限ID。
- set schema =
可以由用戶交互式的使用,也可在應(yīng)用程序中使用,如果用Dynamicrules Bind選項綁定包,這個語句就沒有作用。此語句不在事務(wù)控制之下。
10. 代碼頁的設(shè)置
在創(chuàng)建數(shù)據(jù)庫時設(shè)置字符集
- create database using codeset territory
例:
以下是引用片段:
- create database dbtest using codeset IBM-437 territory US
也可以設(shè)置整個數(shù)據(jù)庫的代碼頁,在win2000/NT/xp中,在我的電腦--> 屬性--> 高級--> 環(huán)境變量中添加變量DB2CODEPAGE = ,例:DB2CODEPAGE = 437 或 DB2CODEPAGE = 1386。或者在IBM DB2命令窗口輸入 db2set DB2CODEPAGE=1386,設(shè)置后需要重新啟動DB2數(shù)據(jù)庫生效。#p#
11. DB2低版本數(shù)據(jù)到高版本的遷移
先將低版本數(shù)據(jù)備份使用恢復(fù)功能導(dǎo)入高版本數(shù)據(jù)庫,然后在命令窗口輸入 db2 migrate database 。
12. 表名或模式中含有引號時訪問表
命令窗口:
- db2 select * from \ "tabschema\ ".\ "tabname\ "
命令行處理器:
- db2=> select * from "tabschema ". "tabname "
13. 導(dǎo)出數(shù)據(jù)庫的表結(jié)構(gòu)生成DDL文件
命令窗口:db2look -d -e -c -o
14. 執(zhí)行腳本文件
命令窗口:db2 -tvf
15. 代碼頁的轉(zhuǎn)換
16. 獲取當(dāng)前DB2的版本
- select * from sysibm.sysversions
17. DB2表的字段的修改限制?
只能修改VARCHAR2類型的并且只能增加不能減少
- alter table alter column set data type varchar(SIZE)
18. 如何查看表的結(jié)構(gòu)?
- describe table
- or
- describe select * from .
19. 如何快速清除一個大表?
- ALTER TABLE TABLE_NAME ACTIVE NOT LOGGED INITALLY WITH EMPTY TABLE
20. 如何查看數(shù)據(jù)庫的存儲過程?
- SELECT * FROM SYSCAT.PROCEDURES
21. 如何查看表的約束?
- SELECT * FROM SYSCAT.CHECKS WHERE TABNAME =
22. 如何查看表的引用完整約束?
- SELECT * FROM SYSCAT.REFERENCES WHERE TABNAME =
11. DB2低版本數(shù)據(jù)到高版本的遷移
先將低版本數(shù)據(jù)備份使用恢復(fù)功能導(dǎo)入高版本數(shù)據(jù)庫,然后在命令窗口輸入 db2 migrate database 。
12. 表名或模式中含有引號時訪問表
命令窗口:db2 select * from \ "tabschema\ ".\ "tabname\ "
命令行處理器:db2=> select * from "tabschema ". "tabname "
13. 導(dǎo)出數(shù)據(jù)庫的表結(jié)構(gòu)生成DDL文件
命令窗口:db2look -d -e -c -o
14. 執(zhí)行腳本文件
命令窗口:db2 -tvf
15. 代碼頁的轉(zhuǎn)換
16. 獲取當(dāng)前DB2數(shù)據(jù)庫的版本
- select * from sysibm.sysversions
17. DB2表的字段的修改限制?
只能修改VARCHAR2類型的并且只能增加不能減少
- alter table alter column set data type varchar(SIZE)
18. 如何查看表的結(jié)構(gòu)?
- describe table
- or
- describe select * from .
19. 如何快速清除一個大表?
- ALTER TABLE TABLE_NAME ACTIVE NOT LOGGED INITALLY WITH EMPTY TABLE
20. 如何查看數(shù)據(jù)庫的存儲過程?
- SELECT * FROM SYSCAT.PROCEDURES
21. 如何查看表的約束?
- SELECT * FROM SYSCAT.CHECKS WHERE TABNAME =
22. 如何查看表的引用完整約束?
- SELECT * FROM SYSCAT.REFERENCES WHERE TABNAME =
以上的相關(guān)內(nèi)容就是對DB2數(shù)據(jù)庫使用的32個小技巧的介紹,望你能有所收獲。
【編輯推薦】