成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

對(duì)DB2數(shù)據(jù)庫(kù)的外部文件格式的全面了解

數(shù)據(jù)庫(kù)
以下的文章主要描述的是DB2數(shù)據(jù)庫(kù)所支持的外部文件格式的全面了解,其中也有對(duì)定界的ASCII文件,ASCII文件固定記錄長(zhǎng)度,以及二進(jìn)制格式的文件的介紹。

下面的文章主要介紹的是DB2數(shù)據(jù)庫(kù)所支持的外部文件格式的全面了解,如果你對(duì)DB2數(shù)據(jù)庫(kù)所支持的外部文件格式的全面了解有興趣的話,你就可以對(duì)以下的文章點(diǎn)擊觀看了。在DB2數(shù)據(jù)庫(kù)的實(shí)際維護(hù)中,有項(xiàng)工作可能經(jīng)常要我們大家對(duì)其進(jìn)行處理。

如在數(shù)據(jù)庫(kù)投入生產(chǎn)使用之前,往往需要在DB2數(shù)據(jù)庫(kù)中建立大量的信息。這步工作很多都是通過(guò)數(shù)據(jù)導(dǎo)入來(lái)完成的,即將數(shù)據(jù)直接從某個(gè)文件中導(dǎo)入到數(shù)據(jù)庫(kù)系統(tǒng)中。不過(guò)在數(shù)據(jù)導(dǎo)入之前,DB2數(shù)據(jù)庫(kù)系統(tǒng)往往會(huì)對(duì)外部文件的格式進(jìn)行仔細(xì)的檢查。

如果外部文件的格式不符合數(shù)據(jù)庫(kù)的強(qiáng)制性要求,數(shù)據(jù)庫(kù)就會(huì)拒絕導(dǎo)入數(shù)據(jù)。筆者這次要給大家介紹的就是DB2數(shù)據(jù)庫(kù)支持哪些外部文件格式。希望通過(guò)這個(gè)分析能夠幫助數(shù)據(jù)庫(kù)管理員減輕數(shù)據(jù)導(dǎo)入導(dǎo)出過(guò)程中的工作量。

一、定界的ASCII文件。

定界的ASCII文件,在數(shù)據(jù)庫(kù)領(lǐng)域內(nèi)應(yīng)用的是比較廣泛的。基本上任何一個(gè)DB2數(shù)據(jù)庫(kù)都支持這種格式的外部文件。不過(guò)各個(gè)數(shù)據(jù)庫(kù)對(duì)于定界ASCII文件的分隔符的要求是不同的。在DB2數(shù)據(jù)庫(kù)中,(提高DB2數(shù)據(jù)備份與恢復(fù)的效率)分隔符好用來(lái)標(biāo)識(shí)數(shù)據(jù)元素的起始位置和結(jié)束位置。

一般來(lái)說(shuō),DB2數(shù)據(jù)庫(kù)支持如下幾種分隔符。一是字符分隔符。這個(gè)字符分隔符主要用來(lái)界定字符型數(shù)據(jù)類型的起始位置。默認(rèn)情況下,在DB2數(shù)據(jù)庫(kù)中使用雙引號(hào)來(lái)作為字符分隔符。這個(gè)跟其他數(shù)據(jù)庫(kù)有所不同。如在Oracle數(shù)據(jù)庫(kù)中,利用定界的ASCII文件導(dǎo)入數(shù)據(jù)的時(shí)候,其會(huì)自動(dòng)判斷數(shù)據(jù)是否是字符型的數(shù)據(jù)類型,即不需要使用這個(gè)字符分隔符。

二是列分隔符,即用來(lái)界定字段的起始位置。大部分情況下,都采用逗號(hào)(英文狀態(tài))來(lái)作為列的分隔符。不過(guò)用戶可以根據(jù)自己的需要來(lái)設(shè)置不同的列分隔符,如冒號(hào)或者分號(hào)等等。無(wú)論是哪一種符號(hào)來(lái)做列分隔符,一般情況下都需要滿足一個(gè)前提條件,即必須是英文輸入環(huán)節(jié)下的符號(hào)。

如果是中文狀態(tài)下的逗號(hào)或者分號(hào),則會(huì)當(dāng)作普通字符來(lái)對(duì)帶。三是行分隔符。行分隔符是一個(gè)比較特殊的分隔符,因?yàn)槠渌扇〉牟僮飨到y(tǒng)平臺(tái)不同,其采用的行分隔符是不同的。如在Windows操作系統(tǒng)上,行分隔符就是普通的換行符。而在Linux等操作系統(tǒng)上,雖然也是換行符,但是兩個(gè)操作系統(tǒng)上換行符是不同的。

如在Linux操作系統(tǒng)上打開Windows操作系統(tǒng)上建立的定界ASCII文件,則格式會(huì)混亂。如所有記錄在同一行中顯示,好像沒有分行一樣。為此在導(dǎo)入數(shù)據(jù)時(shí),如果這個(gè)定界文件是在Windwos操作系統(tǒng)上建立的,而DB2數(shù)據(jù)庫(kù)則是不屬在Linux操作系統(tǒng)上,就無(wú)法正常導(dǎo)入導(dǎo)DB2數(shù)據(jù)庫(kù)中。

而需要先對(duì)格式進(jìn)行轉(zhuǎn)換,將換行符轉(zhuǎn)換為L(zhǎng)inux操作系統(tǒng)所能夠識(shí)別的換行符。這一點(diǎn)數(shù)據(jù)庫(kù)管理員必須要引起足夠的重視。(在DB2數(shù)據(jù)庫(kù)里面如何更新執(zhí)行計(jì)劃)

根據(jù)上面的規(guī)則,如下記錄就是DB2數(shù)據(jù)庫(kù)所能夠支持的格式:

1001,”office”,2323,”BeiJing”,-233

注意,如果在外部文件中,字符串的值中包含列分隔符時(shí)(如逗號(hào)列分隔符),則這個(gè)字符串分隔符是必須的。也就是說(shuō),如果要導(dǎo)入的數(shù)據(jù)是字符型數(shù)據(jù)的話,必須要使用雙引號(hào)括起來(lái)。如果沒有列分隔符好的話,則這個(gè)字符串分隔符號(hào)可有可無(wú)。如Bei,Jing這個(gè)字符串,如果不用雙引號(hào)括起來(lái)的話,DB2數(shù)據(jù)庫(kù)系統(tǒng)就會(huì)認(rèn)為他是兩個(gè)字段,而不是一個(gè)字符串。

此時(shí)就需要使用字符分隔符將其引用起來(lái),告訴數(shù)據(jù)庫(kù)系統(tǒng)這是一個(gè)字符串。雖然這個(gè)定界的ASCII文件可以用來(lái)轉(zhuǎn)換大多數(shù)的數(shù)據(jù)類型,如字符型數(shù)據(jù)、數(shù)字型數(shù)據(jù)、日期型數(shù)據(jù)等等。但是如果外部文件中包含二進(jìn)制數(shù)據(jù)的話,則采用這個(gè)定界的ASCII文件不是很好的選擇。

另外就是如果文件建立的平臺(tái)與DB2數(shù)據(jù)庫(kù)所在的平臺(tái)所采用的操作系統(tǒng)平臺(tái)不同,也不建立采用這個(gè)ASCII定界文件。如果遇到這種情況的話,筆者建立采用PC集成交換格式的外部文件。***需要提醒的是,在定界的ASCII文件中,數(shù)據(jù)行的***長(zhǎng)度沒有限制。

但是單獨(dú)列的值的***長(zhǎng)度不能夠超過(guò)32KB。則只是從ASCII文件的角度來(lái)說(shuō)的。在將文件導(dǎo)入到數(shù)據(jù)庫(kù)的時(shí)候,還需要注意DB2數(shù)據(jù)庫(kù)表中字段的大小能否容納這個(gè)外部文件中字段的值。

二、固定記錄長(zhǎng)度的ASCII文件。

DB2數(shù)據(jù)庫(kù)還支持固定長(zhǎng)度的ASCII外部文件格式,有時(shí)候也將這種格式的文件叫做位置ASCII文件。固定記錄長(zhǎng)度位置的ASCII文件格式使用固定的字節(jié)偏移量來(lái)替代記錄分隔符以決定各個(gè)字段的界限。簡(jiǎn)單的說(shuō),在這種文件格式下,文件中的每一個(gè)記錄(記錄中的每一個(gè)字段)都有固定的長(zhǎng)度。如第N條記錄的起始位置就是記錄的固定長(zhǎng)度乘以N的乘積決定。

所計(jì)算出來(lái)的值就是從文件起點(diǎn)算起的字節(jié)偏移量。不僅記錄行的長(zhǎng)度是固定的,而且每條記錄中每個(gè)列的值的起始位置和終止位置也是相同的。即每個(gè)字段的長(zhǎng)度是相同的。不過(guò)字段實(shí)際內(nèi)容沒有達(dá)到這個(gè)固定寬度的話,則往往是使用空格符來(lái)代替。

不過(guò)這個(gè)文件格式比起比起上面所講的定界的ASCII文件有很大的缺陷。如制作這個(gè)文件非常的麻煩,而且很容易出錯(cuò)。多輸入一個(gè)空格與少輸入一個(gè)空格都會(huì)導(dǎo)致數(shù)據(jù)庫(kù)導(dǎo)入錯(cuò)誤。如中文字符與英文字符所占的位置是不同的。如果數(shù)據(jù)文件中同時(shí)包含中文與英文字符的話,那么這個(gè)固定長(zhǎng)度就很難控制。

所以說(shuō),筆者跟很多數(shù)據(jù)庫(kù)管理員一樣,并不建立采用這個(gè)固定長(zhǎng)度的ASCII文件格式。如果一定要使用的話,那么也要采用專業(yè)的工具來(lái)轉(zhuǎn)換這個(gè)文件。如在Linux操作系統(tǒng)中,可以利用重定向符號(hào)來(lái)制作固定寬度的ASCII文件。

總之,如果手工建立這個(gè)文件的話,則出錯(cuò)的可能性很大。現(xiàn)在的DB2數(shù)據(jù)庫(kù)系統(tǒng),雖然某些導(dǎo)入工具還支持這種格式的外部文件。但是在數(shù)據(jù)導(dǎo)出的時(shí)候,已經(jīng)放棄了這個(gè)格式。可見這種格式的文件正在退出歷史舞臺(tái)。

三、二進(jìn)制格式的文件。

以上兩種文件有一個(gè)共同的特點(diǎn),即都不是以二進(jìn)制形式存儲(chǔ)的。為此他們?cè)趹?yīng)用的時(shí)候會(huì)遇到一個(gè)兼容性的文件。如在Linux操作系統(tǒng)平臺(tái)上將某張表導(dǎo)出為ASCII文件。在Windows操作系統(tǒng)平臺(tái)上,無(wú)法將這個(gè)文件導(dǎo)入到DB2數(shù)據(jù)庫(kù)系統(tǒng)中。主要是因?yàn)橥瑯邮茿SCII文件,在不同的操作系統(tǒng)中(如Linux操作系統(tǒng)或者Windows操作系統(tǒng)),其存儲(chǔ)的格式是不同的。

為此通過(guò)ASCII文件是無(wú)法在不同的操作系統(tǒng)上進(jìn)行數(shù)據(jù)互導(dǎo)的。其實(shí)不光光是DB2 數(shù)據(jù)庫(kù)遇到這種困擾,在Oracle數(shù)據(jù)庫(kù)也是如此。

為了解決問(wèn)題,在DB2數(shù)據(jù)庫(kù)中涉及了二進(jìn)制格式的外部文件。這個(gè)二進(jìn)制格式的數(shù)據(jù)文件主要有兩種,分別為PC集成交換格式和工作表單格式。PC集成交換格式文件主要用于在不同的操作系統(tǒng)平臺(tái)上,如Linux、Windows操作系統(tǒng)平臺(tái)上的DB2數(shù)據(jù)庫(kù)表之間進(jìn)行數(shù)據(jù)傳遞。

即通過(guò)這種格式的二進(jìn)制文件,可以將數(shù)據(jù)從Linux操作系統(tǒng)上的數(shù)據(jù)庫(kù)中到出來(lái),然后導(dǎo)入導(dǎo)Windows操作系統(tǒng)上的DB2數(shù)據(jù)庫(kù)中。這個(gè)文件主要的特點(diǎn)就是,其存儲(chǔ)的不光光是記錄的內(nèi)容,還存儲(chǔ)了表結(jié)構(gòu)的定義。而且因?yàn)槭嵌M(jìn)制格式的文件,所以在不同操作系統(tǒng)上可以容易的轉(zhuǎn)移,而不用擔(dān)心兼容性的問(wèn)題。

另外一種二進(jìn)制文件的格式是工作表單格式。這也是DB2數(shù)據(jù)庫(kù)產(chǎn)品的一種特殊的格式文件。這個(gè)工作表單格式文件的用途與PC集成交換格式的文件用途不同。PC集成交換格式文件主要用來(lái)解決的是不同操作系統(tǒng)平臺(tái)上數(shù)據(jù)遷移時(shí)的兼容性問(wèn)題。

而這個(gè)工作表單格式的文件其主要用途則是用來(lái)解決DB2不同產(chǎn)品之間的數(shù)據(jù)遷移,如在DB2數(shù)據(jù)庫(kù)與Lotus產(chǎn)品之間的數(shù)據(jù)遷移。雖然他們同樣都是二進(jìn)制文件,但是他們用途是不同的。為此數(shù)據(jù)庫(kù)管理員需要根據(jù)不同用途來(lái)選擇合適的文件格式。

【編輯推薦】

  1. 安裝DB2 Content Manager8.3出現(xiàn)144錯(cuò)誤代碼
  2. IBM DB2數(shù)據(jù)庫(kù)新手必看的基礎(chǔ)知識(shí)有哪些?
  3. DB2 CMO安裝7.1.2.6補(bǔ)丁之后會(huì)出現(xiàn)的錯(cuò)誤
  4. DB2數(shù)據(jù)庫(kù)分區(qū)的概念與應(yīng)用的描述
  5. DB2 dart恢復(fù)數(shù)據(jù)的操作步驟與應(yīng)用代碼

 

責(zé)任編輯:佚名 來(lái)源: 全球IP通信聯(lián)盟
相關(guān)推薦

2010-08-02 11:38:43

DB2外部文件格式

2011-03-03 10:48:36

DB2數(shù)據(jù)庫(kù)外部文件

2010-07-27 15:20:01

DB2數(shù)據(jù)庫(kù)

2010-07-27 13:34:08

DB2數(shù)據(jù)庫(kù)

2010-09-06 12:44:24

DB2數(shù)據(jù)庫(kù)

2011-05-26 10:52:41

DB2數(shù)據(jù)庫(kù)

2009-07-20 09:44:31

DB2外部文件格式

2010-08-02 14:09:57

DB2數(shù)據(jù)庫(kù)

2010-08-02 14:19:28

DB2數(shù)據(jù)庫(kù)

2010-08-26 16:26:19

DB2數(shù)據(jù)庫(kù)外部文件

2010-08-02 14:14:13

DB2數(shù)據(jù)庫(kù)

2010-05-07 11:38:55

Oracle DB2

2010-07-28 14:26:37

DB2支持

2011-03-16 15:07:10

DB2數(shù)據(jù)庫(kù)數(shù)據(jù)類型

2010-11-03 15:15:26

DB2數(shù)據(jù)移動(dòng)

2010-08-11 10:06:39

DB2數(shù)據(jù)庫(kù)

2010-08-31 10:53:18

DB2導(dǎo)入數(shù)據(jù)庫(kù)

2011-03-25 14:07:12

IBMDB2數(shù)據(jù)庫(kù)數(shù)據(jù)移動(dòng)

2010-07-27 14:33:24

DB2數(shù)據(jù)庫(kù)

2011-03-11 16:02:03

DB2數(shù)據(jù)庫(kù)安裝
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产精品久久久亚洲 | 成人a视频| www.97zyz.com| 精品99久久久久久 | 日日夜夜草 | 欧美日韩在线精品 | 成人在线视频网址 | 亚洲欧美日韩精品久久亚洲区 | 精品国产乱码久久久久久丨区2区 | 一级二级三级在线观看 | 国产欧美视频一区二区 | 免费在线观看黄色av | 久久久女女女女999久久 | 久久狠狠 | 天天天操| 日日日日日日bbbbb视频 | 欧美另类视频 | 国产区久久 | 成人av电影天堂 | 精品99在线 | 青青操av| 国产精品毛片久久久久久久 | 国产欧美一区二区三区在线播放 | www.日日干 | 91精品国产乱码久久久 | 久久综合久久综合久久 | 亚洲香蕉| 日韩欧美视频 | 亚洲欧美网| 黄网站在线播放 | 日韩一区二区三区在线观看视频 | 91精品国产91久久久久久 | 国产丝袜一区二区三区免费视频 | 农夫在线精品视频免费观看 | 春色av| 在线视频第一页 | 欧美日韩一区二区在线观看 | 性xxxxx | 久久久久久国产精品免费 | 免费观看的黄色网址 | 三级在线观看 |