<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > SQL Server數據庫和XML標識語(yǔ)言的集成

SQL Server數據庫和XML標識語(yǔ)言的集成

作者: 時(shí)間:2017-06-12 來(lái)源:網(wǎng)絡(luò ) 收藏
相比給予了人員更大的編程靈活性。這種技術(shù)驅動(dòng)開(kāi)發(fā)機構嘗試把同自己的產(chǎn)品集成起來(lái)。微軟就是采取如此舉措的先驅者。微軟的幾乎所有產(chǎn)品中都能看到的身影。舉個(gè)例子:微軟是如何在其SQL Server產(chǎn)品線(xiàn)中集成XML的呢?下面咱們就來(lái)看看關(guān)鍵的FOR XML子句。

  以XML的名義獲取信息

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

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

  [ FOR { XML { RAW | AUTO | EXPLICIT }

  [ , XMLDATA ]

  [ , ELEMENTS ]

  [ , BINARY BASE64 ] } ]

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

  RAW示例

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

  SET ROWCOUNT 3SELECT Orders.OrderID, Orders.OrderDate, ProductIDFROM Orders, [Order Details]WHERE Orders.OrderID = [Order Details].OrderIDORDER BY Orders.OrderIDFOR XML RAW

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

 ?。紃ow OrderID=10248 OrderDate=1996-07-04T00:00:00 ProductID=11/>

 ?。紃ow OrderID=10248 OrderDate=1996-07-04T00:00:00 ProductID=42/>

 ?。紃ow OrderID=10248 OrderDate=1996-07-04T00:00:00 roductID=72/>

  AUTO示例

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

  ‘結果限制為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)生的結果如下所示:

 ?。糘rders OrderID=10248 OrderDate=1996-07-04T00:00:00>

 ?。糘rder_x0020_Details ProductID=11/>

 ?。糘rder_x0020_Details ProductID=42/>

 ?。糘rder_x0020_Details ProductID=72/>

 ?。?Orders>

  EXPLICIT示例

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

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

  可選元素

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

  如果你設置該選項,那么XML-Data schema就會(huì )包含在結果集合里。以下是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)生以下結果:

  urn:schemas-microsoft-com:datatypes>order=many>…

  ELEMENTS

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

  BINARY BASE64

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

  注:本文只是對FOR XML子句的簡(jiǎn)單說(shuō)明,這里要提醒你的是這一部分不過(guò)是XML同SQL Server集成需要注意的一點(diǎn),其他方面的問(wèn)題還包括IIS的OPENXML 函數和模版文件等。



關(guān)鍵詞: XML HTML Web開(kāi)發(fā) SQLServer

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>