這篇文章主要介紹了XML數(shù)據(jù)庫中容易混淆的概念有哪些,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
原始的XML數(shù)據(jù)庫
一個原始的XML數(shù)據(jù)庫(NXD)可以是很簡單,也可以是很復(fù)雜。我這樣定義一個數(shù)據(jù)庫的概念:永久穩(wěn)定數(shù)據(jù)的集合。在這樣的定義下,一個NXD能在邏輯上存儲一個XML文檔。當XML:DB initiative對一個NXD還有更多的要求時,我想以上的定義也可以滿足。
以下的代碼行可以用作于一個NXD:
〈?xml version=”1.0”?〉 〈diet〉 〈meal mealName=”breakfast”〉 〈item itemName=“toast” unit=”slice” quantity=“2” /〉 〈item itemName=“bacon” unit=”strip” quantity=“2” /〉 〈/meal〉 〈/diet〉
很顯然,數(shù)據(jù)的集合以XML格式存儲。如果它被存放在一個flat文件,它也會滿足我們對NXD的定義:永久穩(wěn)定數(shù)據(jù)的集合。
一個NXD使用相同的方式來存儲XML文檔(比如:flat文件,關(guān)系數(shù)據(jù)庫或級別數(shù)據(jù)庫,對象數(shù)據(jù)庫)。
Flat文件
一個簡單的flat文件是一個最簡單的XML數(shù)據(jù)庫模型。作為一種“變種”,你可以存儲很多XML文檔在一個目錄層次。為了擴展前面的范例,看看以下的模型:
Diets\ Diets\Atkins Day1.xml Day2.xml Day3.xml Day4.xml Diets\3DayDiet Day1.xml Day2.xml Day3.xml
Diets目錄包含了子目錄,并且每一子目錄很多XML的flat文件。
關(guān)系數(shù)據(jù)庫
關(guān)系數(shù)據(jù)庫中的XML數(shù)據(jù)庫可以分為三種模型:coarse-grained(粗糙紋理型), medium-grained(中等級別紋理型),或 fine-grained(優(yōu)良紋理型)。
coarse-grained(粗糙紋理型)模型在邏輯上與flat文件模型有些不同。你可以使用一個關(guān)系數(shù)據(jù)庫來存放每一個XML文檔。例如,以下的代碼可以存放一個XML文檔:
Create table diets ( dietName varchar2(30), xmlDocument varchar2(32000) )
fine-grained(優(yōu)良紋理型)模型將XML文檔的每一成分映射到關(guān)系數(shù)據(jù)庫中。為了能夠?qū)lat模型轉(zhuǎn)移到關(guān)系數(shù)據(jù)庫,你必須使用兩種改變方式。對以上的范例,你不能再使用子目錄名來代表diet的名稱,你也不能再使用文件的名稱來傳遞diet的日期。表A顯示了diet的XML文檔的文件類型定義(DTD);表B顯示了將DTD映射到關(guān)系表的數(shù)據(jù)定義語言(DDL)。除此之外,表C還包括了相應(yīng)的XML語法。
medium-grained(中等級別紋理型)模型介于coarse-grained(粗糙紋理)模型與 fine-grained(優(yōu)良紋理)模型之間。使用這一模型,你可以將信息存儲在meals 表的xml_items列中。
對象數(shù)據(jù)庫
你也可以通過使用一個對象數(shù)據(jù)庫來執(zhí)行NXD。有些對象數(shù)據(jù)庫是基于文檔對象模型(DOM),這允許XML與數(shù)據(jù)庫有緊密的結(jié)合。例如,一旦你提供一個食物方面的DTD,你可以開始保存這些食物,而不需要額外的配置。
數(shù)據(jù)庫管理系統(tǒng)
對于DBMS,你可以有多種選擇。你可以通過使用開放程序如eXist或Ozone來建立自己的DBMS,或者購買商業(yè)產(chǎn)品如Tamino XML Server。
絕大多數(shù)關(guān)系數(shù)據(jù)庫賣主都使他們的數(shù)據(jù)庫能夠使用XML,至少的,XML數(shù)據(jù)庫(XEDBs)能夠返回XML文檔查詢的結(jié)果。另外很多也可以保存XML數(shù)據(jù)。例如,Oracle 提供了一個XML剖析器,一個Xpath引擎,一個XSLT處理器,一個XMLSQL工具,以及使用XML的方法。
所以,使用關(guān)系數(shù)據(jù)庫存儲的NXD和存儲XML數(shù)據(jù)的XEDB有什么區(qū)別呢?一個NXD是基于XML文檔概念而建立,而XEDB與其它沒有過多的關(guān)聯(lián)。而且,很多規(guī)范適用于NXD,而DBMS只適用標準的查詢和存儲數(shù)據(jù)的XML文檔,比如Xpath。
XML數(shù)據(jù)庫不是新概念
XML數(shù)據(jù)庫在邏輯觀點上不是新概念,雖然在邏輯執(zhí)行上是新的。如果你想要執(zhí)行一個XML數(shù)據(jù)庫,你可以使用NXD,XEDB,或者是二者的結(jié)合。然而,如果你所在的公司對現(xiàn)有的數(shù)據(jù)庫已經(jīng)有一定的投資,你所做的第一個調(diào)查就是核實你的DMBS賣主是否提供使用XML的工具。無論你使用的哪一種XML數(shù)據(jù)庫方式,你都要非常理解每一種數(shù)據(jù)庫的特性,這才是最重要的。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“XML數(shù)據(jù)庫中容易混淆的概念有哪些”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司,關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,更多相關(guān)知識等著你來學習!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、網(wǎng)站設(shè)計器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
當前標題:XML數(shù)據(jù)庫中容易混淆的概念有哪些-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://aaarwkj.com/article10/ihhgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司、外貿(mào)建站、Google、全網(wǎng)營銷推廣、營銷型網(wǎng)站建設(shè)、面包屑導航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容