db2常用命令大全
阿新 • • 發佈:2019-02-13
近一年來在專案開發中使用到了IBM的DB2 9.1的資料庫產品,跟Oracle相比一些命令有很大的區別,而它最大的功能是支援
xml儲存、檢索機制,通過XPath進行解析操作,使開發人員免於對xml檔案在應用進行解析處理,先對其常用命令進行一下匯
總,以免遺忘。
注意:在執行如下命令時,需要首先安裝db2客戶端並通過在執行中輸入db2cmd進行初始化
一、基礎篇
1、db2 connect to <資料庫名> --連線到本地資料庫名
db2 connect to <資料庫名> user <使用者名稱> using <密碼> --連線到遠端資料庫
2、 db2 force application all --強迫所有應用斷開資料庫連線
3、db2 backup db db2name<資料庫名稱> --備份整個資料庫資料
db2 restore db <db2name> --還原資料庫
4、db2 list application --檢視所有連線(需要連線到具體資料庫才能檢視)
5、db2start --啟動資料庫
db2stop --停止資料庫
6、create database <資料庫名> using codeset utf-8 territory CN --建立資料庫使用utf-8編碼
7、db2 catalog 命令
8、資料庫匯出
db2look -d <資料庫名> -u <使用者> -e -o <指令碼名稱>.sql --匯出資料庫的表結構,其中使用者空間一般為db2admin/db2inst1
db2look -d <資料庫名> -u <使用者> -t <表1> <表2> -e -o <指令碼名稱>.sql --匯出資料庫中表1和表2的表結構
db2move <資料庫名> export --匯出資料庫資料
db2move <資料庫名> export -tn <表1>,<表2> --匯出資料庫中表和表資料
9、資料庫匯入
db2 -tvf <指令碼名稱>.sql --把上述匯出的表結構匯入到資料庫表結構
db2move <資料庫名> load -lo replace --把上述“db2move <資料庫名> export “匯出的資料匯入到資料庫中並把相同的資料替換掉
在實際使用過程中,如果用到db2自增主鍵,需要使用by default, 而不是always,功能是一樣的,但這樣在資料移植時候會很方
便!
10、db2 connect reset 或 db2 terminate --斷開與資料庫的連線
11、db2set db2codepage=1208 --修改頁編碼為1208
12、db2 describe table <表名> --查看錶結構
13、db2 list tables --檢視資料庫中所有表結構
list tables for system --列出所有系統表
14、db2 list tablespaces --列出表空間
二、高階篇
15、fetch first 10 rows only --列出表中前10條資料
例如:select * from <表名> fetch first 10 rows only
16、coalesce(欄位名,轉換後的值) --對是null的欄位進行值轉換
例如:select coalesce(id,1) from <表名> --對錶中id如果為null轉換成1
17、dayofweek(日期) --計算出日期中是周幾(1是週日,2是週一.......7是週六)
dayofweek_iso --計算出日期中是周幾(1是週一.......7是週日)
例如:dayofweek(date(2008-01-16)) --它會返回是4,代表星期三
dayofweek_iso(date(2008-01-16)) --它會返回是3,代表星期三
18、dayofyear(日期) --一年中的第幾天,範圍在1-366範圍之內
注意:引數中日期的格式是YYYY-MM-DD的形式,如果不是需要進行轉換,否則函式不能使用
例如:日期是20080116必須要進行轉換
dayofweek(concat(concat(concat(substr(openDate,1,4),'-'),concat(substr(openDate,5,2),'-')),substr(openDate,7,2))) as week)
這樣格式正確的。
19、concatt(引數1,連線值) --把引數1加上連線值組成一個新值。
例如: concat('aa','b') --返回是aab
把oracle表匯入到db2資料庫中,有些欄位型別需要進行轉換,具體看:oracle與db2資料型別轉換
xml儲存、檢索機制,通過XPath進行解析操作,使開發人員免於對xml檔案在應用進行解析處理,先對其常用命令進行一下匯
總,以免遺忘。
注意:在執行如下命令時,需要首先安裝db2客戶端並通過在執行中輸入db2cmd進行初始化
一、基礎篇
1、db2 connect to <資料庫名> --連線到本地資料庫名
db2 connect to <資料庫名> user <使用者名稱> using <密碼> --連線到遠端資料庫
2、 db2 force application all --強迫所有應用斷開資料庫連線
3、db2 backup db db2name<資料庫名稱> --備份整個資料庫資料
db2 restore db <db2name> --還原資料庫
4、db2 list application --檢視所有連線(需要連線到具體資料庫才能檢視)
5、db2start --啟動資料庫
db2stop --停止資料庫
6、create database <資料庫名> using codeset utf-8 territory CN --建立資料庫使用utf-8編碼
7、db2 catalog 命令
db2 catalog tcpip node <接點名稱> remote <遠端資料庫地址> server <埠號> --把遠端資料庫對映到本地接點一般為50000
db2 catalog db <遠端資料庫名稱> as <接點名稱> at node PUB11 --遠端資料庫名稱到本地接點
db2 CONNECT TO <接點名稱> user <使用者名稱> using <密碼> --連線本地接點訪問遠端資料庫
8、資料庫匯出
db2look -d <資料庫名> -u <使用者> -e -o <指令碼名稱>.sql --匯出資料庫的表結構,其中使用者空間一般為db2admin/db2inst1
db2look -d <資料庫名> -u <使用者> -t <表1> <表2> -e -o <指令碼名稱>.sql --匯出資料庫中表1和表2的表結構
db2move <資料庫名> export --匯出資料庫資料
db2move <資料庫名> export -tn <表1>,<表2> --匯出資料庫中表和表資料
9、資料庫匯入
db2 -tvf <指令碼名稱>.sql --把上述匯出的表結構匯入到資料庫表結構
db2move <資料庫名> load -lo replace --把上述“db2move <資料庫名> export “匯出的資料匯入到資料庫中並把相同的資料替換掉
在實際使用過程中,如果用到db2自增主鍵,需要使用by default, 而不是always,功能是一樣的,但這樣在資料移植時候會很方
便!
10、db2 connect reset 或 db2 terminate --斷開與資料庫的連線
11、db2set db2codepage=1208 --修改頁編碼為1208
12、db2 describe table <表名> --查看錶結構
13、db2 list tables --檢視資料庫中所有表結構
list tables for system --列出所有系統表
14、db2 list tablespaces --列出表空間
二、高階篇
15、fetch first 10 rows only --列出表中前10條資料
例如:select * from <表名> fetch first 10 rows only
16、coalesce(欄位名,轉換後的值) --對是null的欄位進行值轉換
例如:select coalesce(id,1) from <表名> --對錶中id如果為null轉換成1
17、dayofweek(日期) --計算出日期中是周幾(1是週日,2是週一.......7是週六)
dayofweek_iso --計算出日期中是周幾(1是週一.......7是週日)
例如:dayofweek(date(2008-01-16)) --它會返回是4,代表星期三
dayofweek_iso(date(2008-01-16)) --它會返回是3,代表星期三
18、dayofyear(日期) --一年中的第幾天,範圍在1-366範圍之內
注意:引數中日期的格式是YYYY-MM-DD的形式,如果不是需要進行轉換,否則函式不能使用
例如:日期是20080116必須要進行轉換
dayofweek(concat(concat(concat(substr(openDate,1,4),'-'),concat(substr(openDate,5,2),'-')),substr(openDate,7,2))) as week)
這樣格式正確的。
19、concatt(引數1,連線值) --把引數1加上連線值組成一個新值。
例如: concat('aa','b') --返回是aab
把oracle表匯入到db2資料庫中,有些欄位型別需要進行轉換,具體看:oracle與db2資料型別轉換