青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Prayer

在一般中尋求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

DB2文件導入導出常見命令總結

Posted on 2009-09-28 00:45 Prayer 閱讀(412) 評論(0)  編輯 收藏 引用 所屬分類: DB2
   DB2的數據遷移,最常用的就是導入導出功能,而導入導出的命令貌似簡單,實則內含玄機,千變萬化,稍不留神,則錯誤百出,這兒就工作中常用到的命令,總結了一下,分享給大家!歡迎大家踴躍拍磚!?

    當然在這以前,我覺得有必要提及一點關于導入導出基礎的知識!

    DEL:界定的ASCII文件,行分隔符和列分隔符將數據分開。

    ASC:定長的ASCII文件,行按照行分割符分開,列定長。

    PC/IXF:只能用來在DB2之間導數據,根據類型數字值被打包成十進制或者二進制,字符被保存為ASCII,只保存變量已經使用了的長度,文件中包括表的定義和表的數據。

    WSF:工作表方式導入導出,這種格式的文件類型用的比較少。

    DB2中對不同的數據導入導出方式,支持不同的文件類型,這里個人覺得很有必要注意下的。

    文件類型                        Import                        export                        load

    -------------------------------------------------------

    定界                                支持                                支持                                支持

    非定界                        支持                                不支持                        支持

    Ixf                                支持                                支持                                支持

    Wsf工作表                支持                                支持                                不支持

    關于3種導入導出操作進行簡單的介紹:

    export:導出數據,支持IXF,DEL或WSF

    import:導入數據,可以向表中導入數據,支持上面提到的4種文件類型。

    load:導入數據,功能和import基本相同。支持以上說的幾種文件類型。

    關于Export

    這個其實比較簡單,沒啥好說的,一般命令:export to filename of filetype select x from xx where ;就ok了,這里需要注意的是:

    1.關于不同字符集的導出

    MODIFIED BY CODEPAGE=    Exprot to filename.del for del MODIFIED BY   CODEPAGE=1386 select … from …where …;

    這里,在數據從數據庫倒出來的時候就會做一個數據庫代碼頁的轉換

    2.時間字段格式化的

    MODIFIED BY  TIMESTAMPFORMAT="yyyy-mm-dd hh:mm:ss tt"

    例:Exprot to filename.del for del MODIFIED BY  TIMESTAMPFORMAT="yyyy-mm-dd hh:mm:ss tt" select … from …where …;

    關于Import

    1.Import模式的介紹

    CREATE/INSERT/INSERT_UPDATE/REPLACE/REPLACE_CREATE

    CREATE :首先創建目標表和它的索引,然后將數據導入到新表中。該選項惟一支持的文件格式是 PC/IXF。還可以指定新表所在表空間的名稱

    INSERT :將導入的數據插入表中。目標表必須已經存在。

    INSERT_UPDATE :將數據插入表中,或者更新表中具有匹配主鍵的行。目標表必須已經存在,并且定義了一個主鍵。

    REPLACE :刪除所有已有的數據,并將導入的數據插入到一個已有的目標表中。

    REPLACE_CREATE :如果目標表已經存在,則導入實用程序刪除已有的數據,并插入新的數據,就像 REPLACE 選項那樣。如果目標表還沒有定義,那么首先創建這個表以及它的相關索引,然后再導入數據。正如您可能想像的那樣,輸入文件必須是 PC/IXF 格式的文件,因為那種格式包含對導出表的結構化描述。如果目標表是被一個外鍵引用的一個父表,那么就不能使用 REPLACE_CREATE。

    2.批量提交

    COMMITCOUNT,保證insert的數據在COMMITCOUNT以后進行一次commit,這對于大數據量的導入文件來說是一個不錯的方法,

    例:Import from filename of del COMMITCOUNT 50000 insert into tabname;

    3.批量插入

    MODIFIED BY COMPOUND把文件中的 COMPOUND 行記錄作為一組一起導入,這個操作可以和上邊的批量提交一起使用,比較理想。

    例:Import from filename of del MODIFIED BY COMPOUND =50 insert into tabname;

    4.導入記錄限制

    ROWCOUNT:只導入rowcount 條數據,有時候,業務邏輯需要只導入部分數據,那么ROWCOUNT是一個不錯的選擇,只是在我的測試中ROWCOUNT一直沒有起過作用,呵呵,誰熟悉這里,幫我完善下。

    例:Import from filename of del ROWCOUNT 10000 insert into tabname;

    5.導入起點

    RESTARTCOUNT:從導入文件的第RESTARTCOUNT條記錄開始導入

    例:Import from filename of del RESTARTCOUNT 55 ROWCOUNT 10000 insert into tabname;--從55條開始,導入10000條數據

    6.有警告數據的條數限制

    WARNINGCOUNT:當導入的數據中,有警告或錯誤(例如類型不匹配,列不對應等造成的)并且條數超過WARNINGCOUNT是就會停止import。

    例:Import from filename of del WARNINGCOUNT 10 insert into tabname;

    7.禁止發出行警告

    MODIFIED BY NOROWWARNINGS

    例:Import from filename of del MODIFIED BY NOROWWARNINGS WARNINGCOUNT 10 insert into tabname;

    8.LOB 文件

    LOBS FROM :指出LOB的路徑

    例:Import from filename of del LOBS FROM ‘/home’ MODIFIED BY NOROWWARNINGS WARNINGCOUNT 10 insert into tabname;

    9.對于自增序列(GENERATED ALWAYS)

    建議不要對自增序列的表進行import操作,因為import對于自增序列,只有MODIFIED BY  IDENTITYIGNORE和MODIFIED BY IDENTITYMISSING的2中操作,這2中操作都會改變自增序列的原值,這樣如果導出表和表之間有基于自增序列的關聯關系的話,就失去了數據本身的意義,所以建議盡量少用基于import的自增表的操作,那該怎么做?可以用load老代替import,我們下來在load的操作中會講到!

    關于Load

    1. 字符串間隔,列間隔,小數點表示

    CHARDEL/COLDEL/DECPT

    例:LOAD CLIENT FROM 'F:s1.del' OF DEL MODIFIED BY CHARDEL(COLDEL=   DECPT?  INSERT INTO "DB2ADMIN"."ZXTABLES"

    2.數據庫記錄中存在換行符,導致數據無法裝入的情況

    MODIFIED BY DELPRIORITYCHAR

    Db2默認load優先級策略為,record delimiter, character delimiter, column delimiter,這樣record delimiter得優先級最高,所以原始文件如果有換行的話load就認為是新的record,如果用戶在某些情況下行里面包含了換行符(比如論壇里面的一條帖子,不可能把換行符刪掉的),就必須用delprioritychar改變默認的優先級別,確保""之間的數據不管有沒有換行符都被認為是同一條記錄

    例:LOAD CLIENT  FROM 'F:s1.del' OF DEL MODIFIED BY DELPRIORITYCHAR  INSERT INTO DB2ADMIN.ZXTABLES

    3.load后表空間暫掛的處理

    Copy YES/ NONRECOVERABLE

    對于DMS表空間,load默認為copy NO 模式,此模式下,load完成后,表空間會處于暫掛狀態,這時候只能查表中的數據,需要對表空間進行一次備份,才可以對表進行update、insert等操作,那么我們可以使用如上2個命令,對于Copy YES,load完成以后會自動進行一次備份操作;NONRECOVERABLE 指出load不可恢復,此命令符不會產生表空間暫掛,也不會自動進行表空間備份,但是他有一個缺點就是,不能恢復,當數據庫進行回滾的時候,不能還原,危險等級還是比較高一點,不過個人覺得也NONRECOVERABLE比較實用。

    例:LOAD CLIENT FROM 'F:s1.del' OF DEL INSERT INTO DB2ADMIN.ZXTABLES NONRECOVERABLE

    LOAD CLIENT FROM 'F:s1.del' OF DEL INSERT INTO DB2ADMIN.ZXTABLES COPY YES

    4. load IXF類型文件到多分區數據庫

    partitioned db configmode load_only_verify_part part_file_location

    當數據在2個不同數量節點的數據庫之間移動,如果還想使用load來進行IXF的數據裝載就比較棘手了,當時查遍IBM的官方文檔均無所獲,正郁郁不安時,狼出現了,給支了一招,現分享給大家。

    首先,把ixf文件復制和分區數量相同的文件,并后綴.000(分區號),

    比如,2個分區,那么我需要把原來的a.ixf,拷貝2個,并命名為a.ixf.000以及a.ixf.001

    然后,load from staff.ixf of ixf replace into t1 partitioned db configmode load_only_verify_part part_file_location xxxx(part_file_location為a.ixf.000所在的目錄),當然如果在unix下的話,可以通過ln –s 來做一個連接也行。

    5. 對于自增序列(GENERATED ALWAYS)

    MODIFIED BY IDENTITYOVERRIDE:此參數可以理解為,采用文件load文件中的自增值做為表自增序列的值,這樣就能保證對于自增序列有業務意義,或者關聯邏輯(主外鍵關聯)的情況下保證數據的一致,個人對此命令屢試不爽

    例:  LOAD CLIENT FROM 'F:s1.del' OF DEL MODIFIED BY IDENTITYOVERRIDE INSERT INTO DB2ADMIN.ztables;

    6. 對于自增序列(GENERATED by default)

    GENERATED by default可以直接通過一般的導入方式加載數據,不過有時候會有一點點小問題,自增序列沒有進行分配,也就是說,原來表有50條記錄,自增序列的下一次分配值為50,當你已經導入了1000條記錄進去了,然后發現自增序列的下一次分配值還是為50,這種事不經常發生,但是偶爾會發生一次,比較郁悶的是,當表繼續插入數據的時候,下一次分配就會發生沖突,尤其是如果自增建為主鍵的時候,會違反唯一約束。

    解決辦法:首先找到這個序列分配的最大值,select max(id) from tablea;

    然后用下邊這個命令,alter table tablea alter column restart  with max(id)+1

    7.ROWCOUNT/WARNINGCOUNT

    這個同IMPORT

    8.terminate,restart

    如果load的過程中出了點故障,比如連接被force掉了等,這時連接查詢表數據會報錯SQL0668N,原因碼3,這時可以通過帶有terminate的load命令來進行處理!

    LOAD CLIENT FROM 'F:s1.del' OF DEL terminate INTO DB2ADMIN.ztables;

    9. set integrity 命令

    如果表上有約束,那么給表load數據以后,一般連接表的時候都會報錯,SQL0668N,原因碼1,這說明該表處于“設置完整性暫掛無訪問”狀態,那么需要如下命令來操作。

    Set integrity for schema.tablename immediate checked;

    10.提高導入導出速度的數據庫參數

    CONFIGURATION:應用程序堆大小,該參數指示可由Backup,restore,load及裝入恢復應用程序同事使用的最大內存量,看帖子上有介紹,這個值可以設置為10000*cpu數量。

    db2_all "DB2 UPDATE DATABASE CONFIGURATION USING UTIL_HEAP_SZ 113486"

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲视频成人| 久久久久久久91| 欧美一区二区视频在线| a91a精品视频在线观看| 一区二区激情视频| 亚洲综合日韩| 久久尤物视频| 欧美高清视频| 日韩视频在线免费观看| 一区二区三区国产精品| 亚洲综合精品四区| 久久免费少妇高潮久久精品99| 女人色偷偷aa久久天堂| 欧美日韩一区二区三区四区在线观看| 欧美国产欧美亚洲国产日韩mv天天看完整 | 国产一区二区三区在线观看精品 | 久久精品五月婷婷| 欧美电影免费观看网站| 99riav1国产精品视频| 欧美一级理论性理论a| 麻豆精品网站| 国产精品毛片| 亚洲欧洲在线一区| 欧美一区二区日韩| 亚洲国产精品一区二区第一页| 欧美成人精品福利| 亚洲一区999| 久久综合狠狠| 国产欧亚日韩视频| 亚洲午夜一级| 亚洲国产成人精品视频| 欧美一区二区高清| 国产精品扒开腿做爽爽爽软件 | 亚洲国产清纯| 久久成人一区| 国产精品视频久久一区| 日韩午夜激情| 欧美电影在线观看| 欧美专区18| 国产精一区二区三区| 99热这里只有精品8| 欧美aⅴ99久久黑人专区| 亚洲欧美日韩综合| 国产精品午夜在线| 亚洲一区三区电影在线观看| 亚洲精品乱码久久久久久蜜桃91 | 欧美成人在线免费观看| 一本久久a久久精品亚洲| 免费观看成人www动漫视频| 国产午夜精品在线| 亚洲欧美中文日韩v在线观看| 亚洲国产精品女人久久久| 久久综合色天天久久综合图片| 国产亚洲一区二区在线观看 | 浪潮色综合久久天堂| 亚洲一区在线观看视频| 欧美色一级片| 亚洲女性裸体视频| 亚洲无毛电影| 国产酒店精品激情| 欧美一区二区视频在线观看2020 | 国产片一区二区| 欧美专区福利在线| 欧美亚洲日本一区| 国产亚洲一区二区精品| 久久午夜电影| 欧美.日韩.国产.一区.二区| 亚洲精品欧美精品| 亚洲精品永久免费精品| 欧美视频精品一区| 香蕉成人伊视频在线观看| 亚洲综合视频网| 国产一区美女| 亚洲高清不卡在线| 欧美日韩一区二区三区视频| 亚洲欧美在线观看| 久久久欧美一区二区| 亚洲国产欧美一区二区三区久久 | 狼人社综合社区| 亚洲日韩成人| 一本色道久久综合亚洲二区三区| 国产精品乱子久久久久| 久久精品视频va| 美女久久网站| 亚洲淫性视频| 久久久青草婷婷精品综合日韩| 亚洲黄色有码视频| 国产精品99久久久久久久久久久久| 国产美女扒开尿口久久久| 欧美xx视频| 国产精品美女主播| 欧美成人日韩| 国产精品亚洲欧美| 欧美韩日视频| 国产农村妇女精品一二区| 欧美国产欧美亚洲国产日韩mv天天看完整 | 国产一区高清视频| 亚洲日本欧美在线| 国产婷婷精品| 亚洲精品资源美女情侣酒店| 国产一区二区高清| 99re6热在线精品视频播放速度 | 亚洲欧美另类在线| 久久久久久久尹人综合网亚洲| 一本色道久久88精品综合| 欧美专区日韩专区| 亚洲一区二区在线视频| 久久躁狠狠躁夜夜爽| 午夜国产精品影院在线观看| 麻豆九一精品爱看视频在线观看免费| 亚洲一区精品电影| 欧美精品日韩www.p站| 久久精品一二三| 国产精品扒开腿做爽爽爽软件| 亚洲动漫精品| 亚洲第一天堂无码专区| 亚洲欧美日韩精品久久奇米色影视| 亚洲人成小说网站色在线| 久久高清免费观看| 久久国内精品自在自线400部| 欧美日韩亚洲综合| 亚洲日本欧美日韩高观看| 亚洲日本中文| 欧美成人精品| 欧美国产高潮xxxx1819| 国内精品久久国产| 欧美永久精品| 久久久久国内| 国产亚洲精品一区二555| 亚洲一区二区毛片| 亚洲欧美日韩精品在线| 国产精品二区二区三区| 亚洲乱码精品一二三四区日韩在线 | 亚洲欧美美女| 性欧美video另类hd性玩具| 欧美日韩免费观看一区二区三区 | 亚洲日本视频| 欧美日韩不卡视频| 99视频一区二区| 中文欧美日韩| 国产精品老牛| 久色婷婷小香蕉久久| 激情欧美国产欧美| 久久夜色精品国产欧美乱极品| 久久在线播放| 亚洲福利在线看| 六月婷婷一区| 亚洲欧洲精品一区二区| 亚洲色图综合久久| 国产精品日日摸夜夜摸av| 欧美一级视频免费在线观看| 六月婷婷久久| 亚洲欧洲日产国产网站| 欧美日韩精品免费在线观看视频| 亚洲色图自拍| 久久夜色精品国产欧美乱极品 | 国产免费亚洲高清| 久久久一本精品99久久精品66| 欧美r片在线| 亚洲久久视频| 国产精品美女999| 性久久久久久久久| 欧美www在线| 午夜日韩电影| 在线成人亚洲| 欧美视频一区二区三区…| 欧美一区二区三区男人的天堂 | 久久精品亚洲热| 亚洲国产精品成人一区二区| 欧美日韩国产经典色站一区二区三区| 中国女人久久久| 久久综合久久综合这里只有精品| 日韩视频中文字幕| 国产亚洲毛片| 欧美日韩免费观看一区=区三区| 小嫩嫩精品导航| 亚洲精品美女在线| 久久久久久久成人| 亚洲一区二区欧美日韩| 亚洲国产三级| 国产香蕉久久精品综合网| 你懂的成人av| 欧美一区二区三区在线观看视频| 亚洲黄色成人| 久久香蕉精品| 欧美一区二区三区在线观看视频| 妖精视频成人观看www| 国产亚洲精品激情久久| 欧美视频精品在线| 欧美成人午夜影院| 久久精品国产亚洲精品| 亚洲一区二区三区四区五区午夜| 欧美激情久久久| 久久亚洲一区二区三区四区| 亚洲欧美日韩人成在线播放| 日韩视频一区二区在线观看 | 久久精品动漫| 亚洲女性喷水在线观看一区| 夜夜爽99久久国产综合精品女不卡| 黄色日韩精品|