日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
SQLServer數(shù)據(jù)庫(kù)與XML標(biāo)識(shí)語(yǔ)言的集成

導(dǎo)讀:XML相比HTML給予了Web開(kāi)發(fā)人員更大的編程靈活性。這種技術(shù)驅(qū)動(dòng)開(kāi)發(fā)機(jī)構(gòu)嘗試把XML同自己的產(chǎn)品集成起來(lái)。微軟就是采取如此舉措的先驅(qū)者。微軟的幾乎所有產(chǎn)品中都能看到XML的身影。舉個(gè)例子:微軟是如何在其SQL Server產(chǎn)品線中集成XML的呢?下面咱們就來(lái)看看關(guān)鍵的FOR XML子句。

創(chuàng)新互聯(lián)專(zhuān)注于企業(yè)全網(wǎng)整合營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、蓋州網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁(yè)面制作、購(gòu)物商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為蓋州等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

以XML的名義獲取信息

SQL Server和XML之間的集成首要一點(diǎn)就是根據(jù)SQL數(shù)據(jù)創(chuàng)建XML文件。XML文件的構(gòu)造并不復(fù)雜,用簡(jiǎn)單的腳本和ADO記錄集就可以輕松產(chǎn)生。這個(gè)任務(wù)雖然不算麻煩,但開(kāi)發(fā)人員卻需要針對(duì)他們從服務(wù)器獲取的結(jié)果集合產(chǎn)生不同的腳本,或者編寫(xiě)更為復(fù)雜的通用腳本。SELECT 語(yǔ)句則由此而配備了新的FOR XML子句。

該子句的語(yǔ)法如下所示:

[ FOR { XML { RAW | AUTO | EXPLICIT }

[ , XMLDATA ]

[ , ELEMENTS ]

[ , BINARY BASE64 ] } ]

FOR XML子句的XML模式由三種參數(shù)值表示:RAW、AUTO或者EXPLICIT。模式?jīng)Q定了結(jié)果XML的形式和組成。下面我們就更深入些地通過(guò)以下示例了解以上各個(gè)XML選項(xiàng)。

RAW示例

我們執(zhí)行以下的SQL語(yǔ)句:

SET ROWCOUNT 3SELECT Orders.OrderID,

Orders.OrderDate, ProductIDFROM Orders,

[Order Details]WHERE Orders.OrderID =

[Order Details].OrderIDORDER BY Orders.OrderIDFOR XML RAW

執(zhí)行后產(chǎn)生的結(jié)果如下:

<row OrderID="10248" OrderDate="1996-07-04T00:00:00" ProductID="11"/>

<row OrderID="10248" OrderDate="1996-07-04T00:00:00" ProductID="42"/>

<row OrderID="10248" OrderDate="1996-07-04T00:00:00" roductID="72"/>

AUTO示例:

我們執(zhí)行以下的SQL語(yǔ)句:

‘結(jié)果限制為3條記錄。SET ROWCOUNT 3SELECT Orders.OrderID,

Orders.OrderDate, ProductIDFROM Orders,

[Order Details]WHERE Orders.OrderID =

[Order Details].OrderIDORDER BY Orders.OrderIDFOR XML AUTO

產(chǎn)生的結(jié)果如下所示:

<Orders OrderID="10248" OrderDate="1996-07-04T00:00:00">

<Order_x0020_Details ProductID="11"/>

<Order_x0020_Details ProductID="42"/>

<Order_x0020_Details ProductID="72"/>

</Orders>

EXPLICIT示例

Explicit模式給予查詢(xún)編程人員對(duì)產(chǎn)生XML的完全控制能力。然而這種控制力度卻要價(jià)不菲:你得編寫(xiě)每一查詢(xún)以便SQL語(yǔ)句能包含XML信息。

有關(guān)的語(yǔ)法很復(fù)雜,而且超出了本文的討論范圍。[ , XMLDATA ] [ , ELEMENTS ] [ , BINARY BASE64 ] 是相應(yīng)的可選參數(shù)。

可選元素

示例可以讓我們對(duì)各種設(shè)置的內(nèi)部工作機(jī)理有更多的了解,下面我們就進(jìn)一步研究下FOR XML語(yǔ)句的可選元素XMLDATA。

如果你設(shè)置該選項(xiàng),那么XML-Data schema就會(huì)包含在結(jié)果集合里。以下是SQL語(yǔ)句:

SET ROWCOUNT 3SELECT Orders.OrderID, Orders.OrderDate,

ProductIDFROM Orders, [Order Details]WHERE Orders.OrderID =

[Order Details].OrderIDORDER BY

Orders.OrderIDFOR XML AUTO, XMLDATA

以上的SQL語(yǔ)句產(chǎn)生以下結(jié)果:

"urn:schemas-microsoft-com:datatypes">

order="many">…ELEMENTS

ELEMENTS選項(xiàng)指示各數(shù)據(jù)列作為子元素而非屬性返回。假如你采用AUTO模式就可以只采用該選項(xiàng)。

BINARY BASE64

使用該選項(xiàng)表示你希望采用base64編碼格式表示二進(jìn)制數(shù)據(jù)。

上文只是對(duì)FOR XML子句的簡(jiǎn)單說(shuō)明,這里要提醒大家的是這一部分不過(guò)是XML同SQL Server集成需要注意的一點(diǎn),其他方面的問(wèn)題還包括IIS的OPENXML 函數(shù)和模版文件等。另外很高興和大家分享,希望對(duì)大家能夠有所幫助。

【編輯推薦】

  1. SQL Server 2000中生成XML的小技巧
  2. SQL Server數(shù)據(jù)庫(kù)搭建農(nóng)村信息化的方案
  3. 怎樣使用SQL Server數(shù)據(jù)庫(kù)嵌套子查詢(xún)
  4. 帶你輕松了解SQL Server數(shù)據(jù)庫(kù)的組成

網(wǎng)站標(biāo)題:SQLServer數(shù)據(jù)庫(kù)與XML標(biāo)識(shí)語(yǔ)言的集成
地址分享:http://www.5511xx.com/article/dpodgeh.html