溫暖潔森

          勇敢做自己

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            13 隨筆 :: 1 文章 :: 70 評論 :: 0 Trackbacks
              近一年來在項目開發(fā)中使用到了IBM的DB2 9.1的數(shù)據(jù)庫產(chǎn)品,跟Oracle相比一些命令有很大的區(qū)別,而它最大的功能是支持

          xml存儲、檢索機制,通過XPath進行解析操作,使開發(fā)人員免于對xml文件在應用進行解析處理,先對其常用命令進行一下匯

          總,以免遺忘。

          注意:在執(zhí)行如下命令時,需要首先安裝db2客戶端并通過在運行中輸入db2cmd進行初始化

          一、基礎(chǔ)篇

          1、db2 connect to <數(shù)據(jù)庫名>    --連接到本地數(shù)據(jù)庫名

                 db2 connect to <數(shù)據(jù)庫名> user <用戶名> using <密碼> --連接到遠端數(shù)據(jù)庫

          2、 db2 force application all      --強迫所有應用斷開數(shù)據(jù)庫連接

             
          3、db2 backup db db2name<數(shù)據(jù)庫名稱>  --備份整個數(shù)據(jù)庫數(shù)據(jù)

                 db2 restore db <db2name>                     --還原數(shù)據(jù)庫

          4、db2 list application --查看所有連接(需要連接到具體數(shù)據(jù)庫才能查看)

          5、db2start    --啟動數(shù)據(jù)庫
              
                db2stop --停止數(shù)據(jù)庫

          6、create database <數(shù)據(jù)庫名> using codeset utf-8 territory CN    --創(chuàng)建數(shù)據(jù)庫使用utf-8編碼

          7、db2 catalog 命令

          db2 catalog tcpip node <接點名稱> remote <遠程數(shù)據(jù)庫地址> server <端口號>  --把遠程數(shù)據(jù)庫映射到本地接點一般為50000

          db2 catalog db <遠程數(shù)據(jù)庫名稱> as <接點名稱>  at node PUB11                       --遠程數(shù)據(jù)庫名稱到本地接點

          db2 CONNECT TO <接點名稱> user <用戶名> using <密碼>                               --連接本地接點訪問遠程數(shù)據(jù)庫


          8、數(shù)據(jù)庫導出

          db2look -d <數(shù)據(jù)庫名> -u <用戶> -e -o <腳本名稱>.sql        --導出數(shù)據(jù)庫的表結(jié)構(gòu),其中用戶空間一般為db2admin/db2inst1

          db2look -d <數(shù)據(jù)庫名> -u <用戶> -t <表1> <表2>  -e -o <腳本名稱>.sql   --導出數(shù)據(jù)庫中表1和表2的表結(jié)構(gòu)

          db2move <數(shù)據(jù)庫名> export              --導出數(shù)據(jù)庫數(shù)據(jù)

          db2move <數(shù)據(jù)庫名> export -tn <表1>,<表2>       --導出數(shù)據(jù)庫中表和表數(shù)據(jù)

          9、數(shù)據(jù)庫導入

          db2 -tvf  <腳本名稱>.sql       --把上述導出的表結(jié)構(gòu)導入到數(shù)據(jù)庫表結(jié)構(gòu)

          db2move <數(shù)據(jù)庫名> load -lo replace   --把上述“db2move <數(shù)據(jù)庫名> export “導出的數(shù)據(jù)導入到數(shù)據(jù)庫中并把相同的數(shù)據(jù)替換掉 


          在實際使用過程中,如果用到db2自增主鍵,需要使用by default, 而不是always,功能是一樣的,但這樣在數(shù)據(jù)移植時候會很方

          便!

          10、db2 connect reset 或 db2 terminate    --斷開與數(shù)據(jù)庫的連接

          11、db2set db2codepage=1208        --修改頁編碼為1208

          12、db2 describe table <表名>       --查看表結(jié)構(gòu)

          13、db2 list tables                            --查看數(shù)據(jù)庫中所有表結(jié)構(gòu)

                  list tables for system                  --列出所有系統(tǒng)表

          14、db2 list tablespaces                  --列出表空間

          二、高級篇


          15、fetch first 10 rows  only   --列出表中前10條數(shù)據(jù)

          例如:select * from <表名> fetch first 10 rows only

          16、coalesce(字段名,轉(zhuǎn)換后的值)       --對是null的字段進行值轉(zhuǎn)換

          例如:select coalesce(id,1)  from <表名>    --對表中id如果為null轉(zhuǎn)換成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范圍之內(nèi)

          注意:參數(shù)中日期的格式是YYYY-MM-DD的形式,如果不是需要進行轉(zhuǎn)換,否則函數(shù)不能使用

          例如:日期是20080116必須要進行轉(zhuǎn)換

          dayofweek(concat(concat(concat(substr(openDate,1,4),'-'),concat(substr(openDate,5,2),'-')),substr(openDate,7,2))) as week)

          這樣格式正確的。

          19、concatt(參數(shù)1,連接值)       --把參數(shù)1加上連接值組成一個新值。

            例如: concat('aa','b')    --返回是aab


          把oracle表導入到db2數(shù)據(jù)庫中,有些字段類型需要進行轉(zhuǎn)換,具體看:oracle與db2數(shù)據(jù)類型轉(zhuǎn)換


                以上是自己經(jīng)常用到一些db2命令,db2命令很多,不常用的沒有在上面記錄,以后如使用新命令會繼續(xù)進行更新!
          posted on 2008-01-16 13:44 harry520 閱讀(34494) 評論(6)  編輯  收藏

          評論

          # re: db2常用命令大全 2008-03-21 12:03 馬現(xiàn)福
          好 謝謝   回復  更多評論
            

          # re: db2常用命令大全[未登錄] 2008-08-15 10:10 ke
          樓主,問你個問題,我想從DB2上邊導數(shù)據(jù)出來.我機器裝了客戶端,怎么db2move都沒法用的.是不是只能遠程登到服務器上導啊.謝謝
            回復  更多評論
            

          # re: db2常用命令大全 2011-08-11 11:06 jinhua_110
          很用啊。  回復  更多評論
            

          # re: db2常用命令大全 2012-03-18 19:50 5
          5  回復  更多評論
            

          # re: db2常用命令大全 2013-04-24 10:34 雷鋒
          dayofweek 報錯????  回復  更多評論
            

          # re: db2常用命令大全[未登錄] 2013-05-10 14:29 a
          有些是錯的,樓主瞎抄過來也不驗證一下  回復  更多評論
            


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 桃园县| 开平市| 布尔津县| 芜湖市| 甘泉县| 延川县| 周宁县| 蒙自县| 宝山区| 临朐县| 谢通门县| 琼中| 滦南县| 北票市| 宣化县| 禹城市| 潼南县| 罗甸县| 新闻| 武清区| 德令哈市| 阜新市| 武川县| 巴马| 绥阳县| 连江县| 五大连池市| 抚顺县| 房产| 宾阳县| 景谷| 兰考县| 大宁县| 宁津县| 定边县| 太原市| 浙江省| 信宜市| 曲靖市| 刚察县| 清苑县|