DB2使用筆記-常用命令 可視化數據庫管理軟件可以用DbVisualizer,適合於多種數據庫。 1 表空間 表空間實質是組織數據文件的一種途徑,Oracle就是通過表空間這個數據庫對象完成對數據的組織的。在將數據插入Oracle數據庫之前,必須首先建立表空間,然後將數據插入表空間的一個對象中。 解釋數據庫、表空間、數據文件、表、數據文件的最好辦法就是想象一個裝滿東西的櫃子。數據庫其實就是櫃子,櫃中的抽屜是表空間,抽屜中的文件夾是數據文件,文件夾中的紙是表,寫在紙上的信息就是數據。 2 命令行使用DB2 1) 初始化DB2環境 Win+R(windows下)進入到DB2安裝目錄的BIN目錄下,執行命令:db2cmd,進入到DB2 CLP窗口。 Note:該模式下命令語句沒有“;” 2)然後輸入命令db2,然後就可以輸入sql語句 3、數據庫版本:db2 level 4、查看所有數據庫 db2 list db directory 5、連接數據庫sample CONNECT TO sample user userName using password 6、建立數據庫 Create sample database command: db2sampl 默認建立的用例數據庫名是sampl,如果要指定數據庫名用 db2sampl –name databaseName 7 在不同數據庫間導入導出數據 (1)db2look Link:how to use db2look sample: Eq : db2look -d employee -e -generate DDL for all tables , views , etc for the employee databaseand displays on screen db2look -d employee -e -o k.sql -generate DDL for all tables , views , etc for the employee databaseand sends the output to k.sql file Copy k.sql file to the target maching and run the query with thefollowing command db2 -tvf k.sql (2)db2move Link:how to use db2move 8、 導出和導入數據 1)DB2命令行導出數據庫全庫表結構 ① Win+R進入到DB2安裝目錄的BIN目錄下,執行命令:DB2CMD,進入到DB2 CLP窗口。 命令:DB2CMD ② 創建一個data文件夾 命令:MKDIR data 說明:將數據庫全表結構的SQL語句導出到data目錄下 ③ 進入到data目錄 命令:CD data ④ 導出數據庫全表結構 命令:DB2LOOK –D DATABASE_NAME –E –A – I USER_NAME –W PASSWORD –O DB_DLL.sql 說明: DATABASE_NAME —數據庫名稱 USER_NAME —登錄數據庫用戶名 PASSWORD —登錄數據庫用戶密碼 DB_DLL.sql —數據庫全表SQL腳本文件 2) DB2命令行導出數據庫全庫數據 ① 執行命令,導出數據 命令:DB2MOVE DATABASE_NAME EXPORT –u USER_NAME –p PASSWORD 說明: DATABASE_NAME —數據庫名稱 USER_NAME —登錄數據庫用戶名 PASSWORD —登錄數據庫用戶密碼 DB_DLL.sql —數據庫全表SQL腳本文件 提示: -u,-p必須是小寫 3)DB2命令行導出數據庫單個表數據 ① 執行命令,導出單表數據 命令:DB2 EXPORT TO [path(eg..D:/TABLE_NAME.IXF)] OF IXF SELECT [字段(eg.. * orcol1,col2,……coln)] FROM TABLE_NAME; 說明:導出文件格式A:DEL (delimited ASCII format);B:WSF (worksheet format);C:IXF(integrated exchange format, PC version) 4)DB2命令行導入表數據 ① 執行命令導入表數據 命令:DB2 IMPORT FORM [path(eg..D:/TABLE_NAME.IXF)] OF IXF INSERT INTO TABLE_NAME; DB2LOAD FROM [path(eg..D:/TABLE_NAME.IXF)] OF IXF INSERT INTO TABLE_NAME; DB2LOAD FROM [path(eg..D:/TABLE_NAME.IXF)] OF IXF REPLACE INTO TABLE_NAME; //當裝載數據前,先刪除已存在的記錄 DB2LOAD FROM [path(eg..D:/TABLE_NAME.IXF)] OF IXF RESTART INTO TABLE_NAME; //當裝載失敗時,重新執行,並極力導出結果和錯誤信息 DB2LOAD FROM [path(eg..D:/TABLE_NAME.IXF)] OF IXF RESTART INTO TABLE_NAME; //在存在自增長字段的數據導入 DB2LOAD FROM [path(eg..D:/TABLE_NAME.IXF)] OF IXF MODIFIED BY IDENTIEYIGORN INSERT TO TABLE_NAME; 解除裝入數據時,發生的檢查掛起: SETINTEGRITY FOR TABLE1 CHECK IMMEDIATE UNCHECKED; 說明:命令只對數據通過約束檢查的表有效,如果執行還不能解除,有必要檢查數據的完整性,是否不符合約束條件,並試圖重新整理數據,再執行裝入操作.