成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

使用Microsoft SQL Server 2000的XML查詢

瀏覽:253日期:2023-10-31 10:08:30

由于XML本身的諸多優點,XML技術已被廣泛的使用,目前的好多軟件技術同XML緊密相關,比如微軟的。net 平臺對xml提供了強大的支持,提供System.Xml以及其子命名空間下的類型來操作xml.Ado.net通過核心類型DataSet出色的把關系型數據庫同xml進行了緊密集成。由于平常許多開發人員使用。net 來操作Sql server的到數據集后再轉換成xml,所以往往忽略Transact-SQL查詢生成XML數據的強大功能。對于一些項目使用XML查詢直接通過SQL生成xml會來的更為簡便,所以我通過在實際項目中的使用和查閱一些資料寫成一個知識點,一是溫故而知新,二是對于一些開發者剛好需要這方面的技術而還沒有找到比較快捷的學習方式提供一條途徑。

在SQL SERVER 2000中查詢生成XML的語法表達式比較簡潔,整個語法如下:

SELECT <;select_list>

FROM <;table_source>

WHERE <;search_condition>

FOR XML AUTO | RAW | EXPLICIT [,XMLDATA ] [,ELEMENTS] [,BINARY BASE64]

下面我將以Northwind數據庫來演示上面的表達式中所包含的各項功能,下面的查詢語句和返回結果都通過SQL SERVER 2000查詢分析器來執行和得到。

一。 使用AUTO模式

該模式我認為在生成單表xml數據方面是用得最多的,能滿足一般的需要。先來看他的簡單查詢。

1.簡單查詢

查詢語句:

SELECT CategoryID,

CategoryName

FROM Categories

WHERE CategoryID <3 FOR XML AUTO

返回結果:

<;Categories CategoryID='1' CategoryName='Beverages'/>

<;Categories CategoryID='2' CategoryName='Condiments'/>

也可以使用別名,

查詢語句:

SELECT CategoryID AS ID,

CategoryName,

GetDate() as CurrDate

FROM Categories MyTable

WHERE CategoryID <3 FOR XML AUTO

返回結果:

<;MyTable CategoryName='Beverages' CurrDate='2005-06-24T11:09:52.937'/>

<;MyTable CategoryName='Condiments' CurrDate='2005-06-24T11:09:52.937'/>

2.連接查詢

以兩個表為例,

查詢語句:

SELECT Categories.CategoryID,

Categories.CategoryName,

ProductID,

ProductName

FROM Categories

JOIN Products ON Categories.CategoryID = Products.CategoryID AND ProductID <;5

WHERE Categories.CategoryID <3 FOR XML AUTO

返回結果:

<;Categories CategoryID='1' CategoryName='Beverages'>

<;Products ProductID='1' ProductName='Chai'/>

<;/Categories>

<;Categories CategoryID='2' CategoryName='Condiments'>

<;Products ProductID='2' ProductName='Chang'/>

<;/Categories>

可以看到表連接查詢可以生成分層次的Xml,不過需要注意的是SELECT子句中的父表的列要排在子表的列的前面,否則會出現你不想看到的結果,如:

查詢語句:

SELECT ProductID,Categories.CategoryID,Categories.CategoryName,ProductName

FROM Categories

JOIN Products ON Categories.CategoryID = Products.CategoryIDand ProductID <;5

WHERE Categories.CategoryID <;3FOR XML AUTO

返回結果:

<;Products ProductID='1' ProductName='Chai'>

<;Categories CategoryID='1' CategoryName='Beverages'/>

<;/Products>

<;Products ProductID='2' ProductName='Chang'>

<;Categories CategoryID='1' CategoryName='Beverages'/>

<;/Products>

<;Products ProductID='3' ProductName='Aniseed Syrup'>

<;Categories CategoryID='2' CategoryName='Condiments'/>

<;/Products>

<;Products ProductID='4' ProductName='Chef Anton&apos;s Cajun Seasoning'>

<;Categories CategoryID='2' CategoryName='Condiments'/>

<;/Products>

3.使用ELEMENTS選項

使用該選項可以生成以元素為中心的Xml表示,默認為屬性方式,不過屬性方式節省空間。需要注意的是使用ELEMENTS選項是一種全是或全否的形式,不能得到一部分是以元素表示而另一部分以屬性表示的Xml數據。

查詢語句:

SELECT CategoryID,

CategoryName

FROM Categories

WHERE CategoryID <3

FOR XML AUTO, ELEMENTS

返回結果:

<;Categories>

<;CategoryID>1<;/CategoryID>

<;CategoryName>Beverages<;/CategoryName>

<;/Categories>

<;Categories>

<;CategoryID>2<;/CategoryID>

<;CategoryName>Condiments<;/CategoryName>

<;/Categories>

在連接查詢時,

查詢語句:

SELECT Categories.CategoryID,

ProductID,

ProductName

FROM Categories

JOIN Products ON Categories.CategoryID = Products.CategoryIDand ProductID <;4

WHERE Categories.CategoryID <;3FOR XML AUTO, ELEMENTS

返回結果:

<;Categories>

<;CategoryID>1<;/CategoryID>

<;Products>

<;ProductID>1<;/ProductID>

<;ProductName>Chai<;/ProductName>

<;/Products>

<;Products>

<;ProductID>2<;/ProductID>

<;ProductName>Chang<;/ProductName>

<;/Products>

<;/Categories>

<;Categories>

<;CategoryID>2<;/CategoryID>

<;Products>

<;ProductID>3<;/ProductID>

<;ProductName>Aniseed Syrup<;/ProductName>

<;/Products>

<;/Categories>

4.檢索對二進制數據的XPath引用

這是對二進制數據的操作,

查詢語句:

SELECT CategoryID,

Picture

FROM Categories

WHERE CategoryID = 1

FOR XML AUTO

返回結果:

<;Categories CategoryID='1' Picture='dbobject/Categories[@CategoryID='1']/@Picture'/>

使用ELEMENTS方式,

查詢語句:

SELECT CategoryID,

Picture

FROM Categories

WHERE CategoryID = 1

FOR XML AUTO,ELEMENTS

返回結果:

<;Categories>

<;CategoryID>1<;/CategoryID>

<;Picture>dbobject/Categories[@CategoryID='1']/@Picture<;/Picture>

<;/Categories>

二。使用RAW模式

使用RAW模式不能使用ELEMENTS選項。

1.簡單查詢

查詢語句:

SELECT CategoryID,

CategoryName AS Nanme

FROM Categories

WHERE CategoryID <3

ORDER BY CategoryID DESC

FOR XML RAW

返回結果:

<;row CategoryID='2' Nanme='Condiments'/>

<;row CategoryID='1' Nanme='Beverages'/>

2.連接查詢

查詢語句:

SELECT Categories.CategoryID,

Categories.CategoryName,

ProductID,

ProductName

FROM Categories

JOIN Products ON Categories.CategoryID = Products.CategoryIDand ProductID <;4

WHERE Categories.CategoryID <;= 2FOR XML RAW

返回結果:

<;row CategoryID='1' CategoryName='Beverages' ProductID='1' ProductName='Chai'/>

<;row CategoryID='1' CategoryName='Beverages' ProductID='2' ProductName='Chang'/>

<;row CategoryID='2' CategoryName='Condiments' ProductID='3' ProductName='Aniseed Syrup'/>

標簽: Sql Server 數據庫
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
99视频精品免费视频| 久久久久高清精品| 欧美不卡激情三级在线观看| 毛片一区二区三区| 久久久精彩视频| 亚洲黄色小说网站| 尤妮丝一区二区裸体视频| 久久久精品中文字幕麻豆发布| 狠狠色狠狠色综合系列| 欧美亚洲国产bt| 久久国产精品色| 日本韩国欧美在线| 日本aⅴ亚洲精品中文乱码| 久久久久久久欧美精品| 午夜一区二区三区在线观看| 99视频+国产日韩欧美| 一区二区三区中文在线观看| 日韩一级不卡| 亚洲综合视频在线观看| 亚洲综合国产| 天天色 色综合| 老**午夜毛片一区二区三区| 日韩国产精品久久久久久亚洲| 日本韩国精品一区二区在线观看| 日韩精品一二三区| 欧美午夜在线一二页| 国产在线麻豆精品观看| 欧美一区二区在线视频| 国产盗摄视频一区二区三区| 欧美成人aa大片| 丁香婷婷综合网| 久久日韩精品一区二区五区| 欧美一区久久| 国产精品久久久久影院老司| 最新日韩在线| 亚洲一区二区三区美女| 色婷婷综合久久久中文字幕| 欧美aⅴ一区二区三区视频| 欧美日韩国产精品成人| 国产精品18久久久久| 26uuu另类欧美| 欧美深夜福利| 亚洲一线二线三线久久久| 久久riav二区三区| 久久精品国产**网站演员| 欧美日韩国产一区二区三区地区| 国产精品乡下勾搭老头1| 久久久久久久久岛国免费| 国内自拍一区| 亚洲第一综合色| 欧美系列日韩一区| 成人av一区二区三区| 国产精品成人一区二区三区夜夜夜| 亚洲欧洲日韩综合二区| 五月天网站亚洲| 欧美美女视频在线观看| 91麻豆免费视频| 有坂深雪av一区二区精品| 精品视频在线免费观看| 99精品久久只有精品| 亚洲人123区| 91九色02白丝porn| jlzzjlzz欧美大全| 亚洲免费在线视频| 欧美日韩国产美| 欧美人与禽猛交乱配| 性欧美疯狂xxxxbbbb| 91精品国产一区二区三区| 欧美片网站免费| 午夜视频一区二区| 日韩美女主播在线视频一区二区三区| 欧美a级一区| 亚洲综合色区另类av| 欧美日韩成人综合在线一区二区| 91麻豆成人久久精品二区三区| 亚洲人成网站影音先锋播放| 精品视频在线免费观看| 欧美日韩无遮挡| 日韩精品电影一区亚洲| 欧美xxxx在线观看| 99热这里只有精品8| 国内外成人在线| 综合欧美亚洲日本| 欧美军同video69gay| 亚洲高清在线| 狠狠色狠狠色综合系列| 国产精品久久久久久久久搜平片| 看欧美日韩国产| 99精品视频一区二区| 亚洲.国产.中文慕字在线| 欧美成人性福生活免费看| av不卡免费看| 高清在线观看日韩| 亚洲亚洲人成综合网络| 精品日韩一区二区三区| 久久精品主播| 欧美另类一区| 国产一区二区三区电影在线观看 | 精品制服美女久久| 国产精品丝袜久久久久久app| 色狠狠综合天天综合综合| 欧美不卡视频| 蜜桃视频在线一区| 国产精品青草综合久久久久99| 欧美在线一区二区| 狠狠综合久久| 国产一区二区久久| 亚洲综合网站在线观看| 久久综合久久综合久久| 欧美视频一区二区三区| 日韩香蕉视频| 不卡区在线中文字幕| 日本在线播放一区二区三区| 国产精品日韩成人| 欧美一级在线视频| 国产亚洲毛片在线| 欧美在线视频二区| 久久精品久久99精品久久| 亚洲人成网站在线| 久久综合视频网| 欧美午夜不卡视频| 国产亚洲一区在线播放| 99久久伊人久久99| 麻豆国产精品官网| 亚洲黄色免费电影| 国产欧美一区二区三区在线老狼 | 欧美精品乱码久久久久久按摩| 国产欧美日韩一级| 欧美搞黄网站| 成人在线综合网| 日韩国产欧美三级| 一个色综合网站| 国产精品美女久久久久久久| 欧美精品一区男女天堂| 欧美人动与zoxxxx乱| 久久久久国产精品一区三寸| 好看不卡的中文字幕| www.欧美.com| 国产一区二区三区电影在线观看| 香蕉影视欧美成人| 亚洲丝袜制服诱惑| 欧美国产精品一区二区| 在线不卡欧美精品一区二区三区| 免费日韩精品中文字幕视频在线| 亚洲小说区图片区| 92精品国产成人观看免费| 国产在线一区二区综合免费视频| 婷婷开心激情综合| 亚洲国产毛片aaaaa无费看 | 美日韩一区二区| 亚洲成av人片在线观看| 最新国产成人在线观看| 欧美激情一区在线观看| 欧美变态口味重另类| 91精品国产综合久久精品图片| 欧美亚洲高清一区二区三区不卡| 免费一级欧美片在线播放| 中文亚洲免费| 亚洲黄色毛片| 欧美日韩综合另类| 91论坛在线播放| www.亚洲国产| 不卡的av在线播放| 高清不卡一区二区| 国产大片一区二区| 国产精品一区专区| 国产成人亚洲综合色影视| 韩日av一区二区| 国产一区二区在线观看免费 | 欧美freesex交免费视频| av不卡一区二区三区| 波多野结衣中文字幕一区二区三区| 国产精品18久久久久久vr| 精品一区精品二区高清| 美脚の诱脚舐め脚责91 | 国产午夜精品一区二区三区视频| 精品久久久久久久久久久久久久久 | 日韩午夜激情电影| 日韩美女主播在线视频一区二区三区 | 亚洲综合丁香婷婷六月香| 亚洲另类在线制服丝袜| 亚洲欧美日韩国产另类专区| 亚洲精品国久久99热| 亚洲国产乱码最新视频| 日日欢夜夜爽一区| 秋霞影院一区二区| 美女免费视频一区二区| 国产原创一区二区| 国产成人免费网站| 99国产精品国产精品毛片| 亚洲欧美综合国产精品一区| 欧美激情第二页| 永久久久久久| 久久岛国电影| 欧美天堂一区二区三区| 欧美少妇一区二区| 91麻豆精品久久久久蜜臀| 精品国产乱码久久久久久夜甘婷婷 | 国产精品一线二线三线精华| 国产精品18久久久久久久久久久久 |