• <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>

            Prayer

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

            在db2中傳輸數據

            Posted on 2009-03-25 13:31 Prayer 閱讀(590) 評論(0)  編輯 收藏 引用 所屬分類: DB2
            DB2:數據的傳輸
            Db2提供了如下幾個工具用來傳輸數據:
            ?        Export:Export可以將一個select語句所選擇的數據輸出到指定格式的文件;
            ?        Import:與Export相反,Import工具從文件讀取數據,并利用Insert語句將數據插入到表格之中。值得注意的一點是,執行Import指令的過程中,平常單獨支持Insert語句所觸發的限制檢查和觸發器同樣也會工作;
            ?        Load:與Import類似,Load工具同樣用來加載數據,只是它不使用Insert語句,它直接加載數據頁,所以它的數度更快。在Load過程中,表格上定義的各種限制和觸發器將暫時實效,Load數據之后,要使用SET INTEGRITY指令檢查剛剛加載的數據
            ?        db2move:此工具用來批量移動多個表格;

            Export,Import和Load可以使用一下4種格式的數據文件:
            ?        DEL或者ASC:這兩種格式均為文本格式,只包含數據,不包含表結構的定義;
            ?        IXF:這種格式的文件同時包含數據和表結構的定義,索引和主鍵,但是不包含外鍵,限制和觸發器等;
            ?        WSF:這種格式的文件用來與Lotus 1-2-3等電子表格交換數據;

            Export:
                    執行Export需要SYSADM,SYSCTRL,或者SYSMAINT的權利,或者是對輸出的表格或者視圖有CONTROL的權限;
                    使用Export的例子如下:
            ?        EXPORT TO staff.del OF DEL MESSAGE export.msg
            SELECT * FROM Vicky.staff
            ?        EXPORT TO Vicky.ixf OF IXF
            METHOD N ( name, dept, salary ) MESSAGE export.msg
            SELECT name, dept, salary
            FROM Vicky.staff
            WHERE salary >= 20000
            Import:
                    執行Import指令可以使用下列幾種模式:
            ?        INSERT:目標表格必須已經存在,現有表格的數據頁不會受到影響;
            ?        INSERT_UPDATE目標表格必須存在,而且定義有主鍵。如果新輸入的數據與現有數據的主鍵相等,則更新,否則插入;
            ?        REPLACE:目標表格必須存在,所有現存的數據將被刪除;
            ?        CREATE(僅適于IXF文件):目標表格不存在,Import指令會利用IXF文件種的信息建立表格與索引,并插入數據;
            ?        REPLACE_CREATE(僅適于IXF文件):如果目標表格存在,現存數據被刪除,被新數據所取代;如果目標表格不存在,則同CREATE模式;
            Import指令根據不同的數據文件格式,需要使用METHOD選項指定數據列字段以及起位置;
            ?        METHOD L:對于ASC格式的文件,必須指定每個字段的起始與結束位置;例如:
            IMPORT FROM myfile.asc OF ASC METHOD L ( 1 10, 12 15 )
            INSERT INTO vicky.staff
            ?        METHOD N:對于IXF文件,指定字段的名稱;例如:
            IMPORT FROM myfile.ixf OF IXF METHOD N ( c1, c2, c3 )
            INSERT INTO vicky.staff ( c1, c2, c3 )
            ?        METHOD P:對于DEL和IXF文件,指定字段的號碼;例如:
            IMPORT FROM datafile1.del OF DEL METHOD P ( 1, 3, 4)
            REPLACE INTO vicky.staff ( c1, c3, c4)
            Import使用INSERT語句插入數據,該操作受事務日志所保護,可以在Import語句中使用commitcount選項指定每個事務的插入記錄數,如:
            ?        IMPORT FROM order_item.ixf OF IXF COMMITCOUNT 1000
            MESSAGE import.msg INSERT INTO vicky.order_item

            還可以使用RESTARTCOUNT指定從第幾筆數據開始導入,如從10001筆開始導入:
            ?        IMPORT FROM order_item.ixf of IXF RESTARTCOUNT 10000
            MESSAGE import.msg INSERT INTO vicky.order_item

            Load:
            Load工具不單可以從文件加載數據,還可以從Pipe中或者是磁帶機等外設中加載數據;使用Load時要注意如下幾點:
            ?        Load數據之前,表格必須存在;
            ?        Load數據前先建立索引;
            ?        Load過程不受事務日志保護,可以指定COPY YES選項使Load結束自動進行備份;
            ?        Load數據后需要用SET INTEGRITY語句將不合乎限制的數據放入例外表格;
            ?        Load過程中觸發器不起作用;
            ?        Load只有在REPLACE模式下才可以自動收集統計信息,此時STATISTICS YES為默認選項;
            ?        Load使用sqllib/tmp為默認臨時空間,可以使用TEMPFILE PATH指定其他目錄;
            ?        在SMP環境中Load可以指定使用多個CPU;
            ?        加載過程中可以使用QUERY指令查看加載進度,如:
            LOAD QUERY TABLE vicky.staff
            使用Load的例子如下:
            ?        LOAD FROM tools.ixf OF IXF MESSAGE load.msg
            INSERT INTO vicky.tools
            FOR EXCEPTION vicky.badtools
            ?        LOAD FROM tools.ixf OF IXF MESSAGE load.msg
            REPLACE INTO vicky.tools
            STATISTICS YES WITH DISTRIBUTION AND DETAILED INDEXES ALL
            COPY YES TO /opt/backup
            Load建立索引時可以指定如下幾種模式(INDEXING MODE):
            ?        REBUILD:對表格中的所有數據重建索引結構;
            ?        INCREMENTAL:將加載數據的索引列加入原有的索引結構中;
            ?        AUTOSELECT:由Load自動選擇采用REBUILD或者INCREMENTAL;
            ?        DEFERRED:延遲建立索引結構(至于什么時候建立索引取決與INDEXREC參數;
            SET INTEGRITY的例子:
            ?        SET INTIGRITY FOR vicky.tools, vicky.staff
            IMMEDIATE CHECKED
            FOR EXCEPTION IN vicky.tools USE vicky.badtools,
            IN  vicky.staff USE vicky.badstaff
            ?        SET INTEGRITYCONSTRAINTS FOR vicky.staff ALL IMMEDIATE UNCHECKED
            欧美一区二区三区久久综合| 国产Av激情久久无码天堂| 久久久久久av无码免费看大片| 国内精品欧美久久精品| 亚洲国产精品成人久久蜜臀| 精品久久久久久中文字幕大豆网| 国产精品久久久久久福利漫画| 久久久久九九精品影院| 好属妞这里只有精品久久| 中文字幕精品久久| 久久精品视频网| 色偷偷久久一区二区三区| 精品免费久久久久国产一区| 久久精品国产第一区二区三区 | 久久天天躁狠狠躁夜夜2020| 久久AV高清无码| 久久亚洲精品无码aⅴ大香| 国产精品欧美久久久久无广告 | 久久久精品日本一区二区三区| 99久久精品国内| 久久噜噜久久久精品66| 人妻无码αv中文字幕久久琪琪布 人妻无码精品久久亚瑟影视 | 国产∨亚洲V天堂无码久久久| 久久婷婷五月综合色99啪ak| 久久国产成人精品麻豆| 久久精品免费一区二区| 一本久道久久综合狠狠躁AV| 亚洲国产成人久久综合区| 国产高潮国产高潮久久久91| 国产精品久久国产精麻豆99网站| 性做久久久久久久| 久久亚洲中文字幕精品有坂深雪 | 无码乱码观看精品久久| 久久久国产精品| 久久九九免费高清视频| 久久免费99精品国产自在现线| 久久精品人妻一区二区三区| 国内精品久久久久久久涩爱 | 99久久精品免费看国产| 久久99精品国产麻豆不卡| 久久天天躁狠狠躁夜夜av浪潮 |