溫暖潔森

          勇敢做自己

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            13 隨筆 :: 1 文章 :: 70 評論 :: 0 Trackbacks
              近一年來在項目開發中使用到了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 命令

          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數據類型轉換


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

          評論

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

          # re: db2常用命令大全[未登錄] 2008-08-15 10:10 ke
          樓主,問你個問題,我想從DB2上邊導數據出來.我機器裝了客戶端,怎么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
          有些是錯的,樓主瞎抄過來也不驗證一下  回復  更多評論
            


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


          網站導航:
           
          主站蜘蛛池模板: 嘉善县| 洱源县| 留坝县| 高淳县| 嘉鱼县| 崇礼县| 竹北市| 元谋县| 浮山县| 安义县| 余庆县| 仙游县| 蓝田县| 大兴区| 凤凰县| 瑞丽市| 墨脱县| 崇礼县| 申扎县| 前郭尔| 五家渠市| 白银市| 哈尔滨市| 瑞安市| 南汇区| 交口县| 会宁县| 丹棱县| 来凤县| 建德市| 延川县| 莱西市| 清水河县| 观塘区| 宁津县| 昌黎县| 池州市| 汉川市| 博乐市| 嵊泗县| 滕州市|