您好,登錄后才能下訂單哦!
DB2 export該怎么理解,相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
EXPORT實(shí)用程序使用SQL select語句或XQUERY語句抽取數(shù)據(jù),并將信息放到文件中??墒褂幂敵鑫募苿?dòng)數(shù)據(jù)以便執(zhí)行IMPORT或LOAD操作,或者將數(shù)據(jù)用于分析。
EXPORT TO filename OF { IXF | DEL | WSF }
[ LOBS TO lob-path[{,lob-path}…] ]
[ LOBFILE lob-file[{,lob-file}…] ]
[ XML TO xml-path[{,xml-path}…] ]
[ XMLFILE file-name[{,filename}…] ]
[ MODIFIED BY {filetype-mod …} ][ XMLSAVESCHEMA ]
[ METHOD N ( column-name[{,column-name}…] ) ]
[ MESSAGES message-file ]
{ select-statement | XQUERY xquery-statement |
HIERARCHY{ STARTING sub-table-name |
(sub-tablename[{,sub-table-name}…])
}
[ WHERE … ]
}
filetype-mod:
NODOUBLEDEL、LOBSINFILE、CHARDELx、COLDELx、DECPLUSBLANK、DECPTx、DATESISO、1、2、3、4、CODEPAGE=x、STRIPLZEROS、NOCHARDEL、LOBSINSEPFILES、XMLINSEPFILES、XMLCHAR、XMLGRAPHIC、XMLNODECLARATION、TIMESTAMPFORMAT=x
說明:1、對于大部分導(dǎo)出操作,需要提供SELECT語句指定需要進(jìn)行檢索以便導(dǎo)出的數(shù)據(jù)。導(dǎo)出類型表時(shí),不必顯式發(fā)出SELECT語句,而只需要指定層次結(jié)構(gòu)中的子表遍歷順序。
2、MODIFIED BY filetype-mod文件類型修飾符提供了允許更改數(shù)據(jù)、日期和時(shí)間戳記或代碼頁格式之類的許多選項(xiàng),或者已編寫特定數(shù)據(jù)類型以分隔文件。
3、METHOD參數(shù)可指定要用于已導(dǎo)出數(shù)據(jù)的不同列名。
4、消息文件:EXPORT會將錯(cuò)誤消息、警告消息和參考消息寫至表中ASCII文本消息文件。MESSAGES參數(shù)指定這些文件的名稱。
5、因?yàn)?span lang="EN-US">EXPORT是嵌入式SQL應(yīng)用程序并且以內(nèi)部方式執(zhí)行SQL訪存,所以應(yīng)用于SQL操作的優(yōu)化會同時(shí)應(yīng)用于EXPORT實(shí)用程序??紤]采用大型緩沖池、建立索引和排序堆的好處,另外,通過將輸出文件放在容器和日志設(shè)備外部來盡量降低輸出文件爭用問題。
6、對參與導(dǎo)出操作的每個(gè)表或視圖,都必須具有DATAACCESS權(quán)限或者CONTROL或SELECT特權(quán)。
示例:
1、以IXF輸出格式將sample數(shù)據(jù)庫的STAFF表中有關(guān)Department 20的職員信息導(dǎo)出至exp_sampl_staff.ixf。
D:\>db2 export to exp_sampl_staff.ixf of ixf messages msgs.txt select * from staff where dept=20
導(dǎo)出的行數(shù):4
2、將LOB導(dǎo)出到DEL文件。
D:\>db2 export to myfile.del of del lobs to d:\mylobs\ lobfile lobs1,lobs2 modified by lobsinfile select * from emp_photo
SQL3104N EXPORT 實(shí)用程序 正在開始將數(shù)據(jù)導(dǎo)出至文件 "myfile.del"。
SQL3105N Export 實(shí)用程序已經(jīng)完成導(dǎo)出 "8" 行。
導(dǎo)出的行數(shù):8
3、將LOB導(dǎo)出到DEL文件,對可能無法裝入到第一個(gè)目錄中的文件指定第二個(gè)目錄:
D:\>db2 export to myfile.del of del lobs to d:\mylobs1, d:\mylobs2 modified by lobsinfile select * from emp_photo
SQL3104N EXPORT 實(shí)用程序 正在開始將數(shù)據(jù)導(dǎo)出至文件 "myfile.del"。
SQL3105N Export 實(shí)用程序已經(jīng)完成導(dǎo)出 "8" 行。
導(dǎo)出的行數(shù):8
4、將數(shù)據(jù)導(dǎo)出到DEL文件,將單引號用作字符串定界符,分號用作列定界符,逗號用作小數(shù)點(diǎn)。
D:\>db2 export to myfile.del of del modified by chardel'' coldel; decpt, select * from staff
SQL3104N EXPORT 實(shí)用程序 正在開始將數(shù)據(jù)導(dǎo)出至文件 "myfile.del"。
SQL3105N Export 實(shí)用程序已經(jīng)完成導(dǎo)出 "35" 行。
導(dǎo)出的行數(shù):35
與不指定修飾符的文件內(nèi)容進(jìn)行對比:
D:\>db2 export to myfile2.del of del select * from staff
SQL3104N EXPORT 實(shí)用程序 正在開始將數(shù)據(jù)導(dǎo)出至文件 "myfile2.del"。
SQL3105N Export 實(shí)用程序已經(jīng)完成導(dǎo)出 "35" 行。
導(dǎo)出的行數(shù):35
部分內(nèi)容對比如下:
myfile2: 10,"Sanders",20,"Mgr ",7,+98357.50,
myfile: 10;'Sanders';20;'Mgr ';7;+98357,50;
表導(dǎo)出注意事項(xiàng):
1、如果出現(xiàn)下列任一情況,那么某些信息不會保存至已導(dǎo)出IXF文件:
l 索引列名包含十六進(jìn)制值0x2B或0x2D。
l 該表包含XML列。
l 該表是多維集群表(MDC)。
l 該表包含表分區(qū)鍵。
l 由于代碼頁轉(zhuǎn)換,索引名長度超過128個(gè)字節(jié)。
l 該表是受保護(hù)的。
l EXPORT命令包含SELECT * FROM tablename以外的操作字符串。
l 對導(dǎo)出實(shí)用程序指定了METHOD N參數(shù)。
2、如果索引中指定的列名包含-或+字符,那么不會收集索引信息,并且將返回警告SQL27984W。EXPORT實(shí)用程序完成處理,并且不會影響已導(dǎo)出的數(shù)據(jù)。但是,索引信息未保存在IXF文件中。因此,您必須使用 db2look 實(shí)用程序來單獨(dú)創(chuàng)建索引。
3、如果導(dǎo)出的數(shù)據(jù)超過創(chuàng)建導(dǎo)出文件所在文件系統(tǒng)的可用空間量,導(dǎo)出操作會失敗。在這種情況下,應(yīng)該通過在WHERE子句中指定條件來對選擇的數(shù)據(jù)量進(jìn)行限制,以使已導(dǎo)出文件能夠存放在目標(biāo)文件系統(tǒng)中??梢远啻芜\(yùn)行EXPORT以導(dǎo)出所有數(shù)據(jù)。
4、如果未使用IXF文件格式進(jìn)行導(dǎo)出,那么輸出文件不包含目標(biāo)表的描述,但它們包含記錄數(shù)據(jù)。要重新創(chuàng)建表及其數(shù)據(jù),需創(chuàng)建目標(biāo)表,然后使用LOAD或IMPORT實(shí)用程序填充該表。可使用db2look實(shí)用程序來捕獲原始表定義,并生成相應(yīng)的DDL。
看完上述內(nèi)容,你們掌握DB2 export該怎么理解的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。