《圖像和XML數(shù)據(jù)的》PPT課件.ppt

上傳人:w****2 文檔編號:15536162 上傳時(shí)間:2020-08-19 格式:PPT 頁數(shù):34 大?。?.59MB
收藏 版權(quán)申訴 舉報(bào) 下載
《圖像和XML數(shù)據(jù)的》PPT課件.ppt_第1頁
第1頁 / 共34頁
《圖像和XML數(shù)據(jù)的》PPT課件.ppt_第2頁
第2頁 / 共34頁
《圖像和XML數(shù)據(jù)的》PPT課件.ppt_第3頁
第3頁 / 共34頁

下載文檔到電腦,查找使用更方便

9.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《圖像和XML數(shù)據(jù)的》PPT課件.ppt》由會員分享,可在線閱讀,更多相關(guān)《《圖像和XML數(shù)據(jù)的》PPT課件.ppt(34頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、第8章 圖像和XML數(shù)據(jù)的添加應(yīng)用實(shí)踐,導(dǎo)入讀者照片,導(dǎo)入讀者聯(lián)系方式,查詢讀者聯(lián)系方式,導(dǎo)入讀者照片,導(dǎo)入讀者聯(lián)系方式,查詢讀者聯(lián)系方式,,,8.1 導(dǎo)入讀者照片,實(shí)現(xiàn)功能:借書證號為081101的讀者的照片保存在D盤根目錄下,照片的名稱為081101.jpg,現(xiàn)要在SQL Server服務(wù)器上將該照片信息導(dǎo)入到圖書管理數(shù)據(jù)庫MBOOK中該讀者的照片列上。 實(shí)現(xiàn)方法: 新建一個(gè)查詢窗口,在窗口中輸入如下語句: USE MBOOK GO UPDATE TReader SET 照片=( SELECT * FROM OPENROWSET(BULK ND:081101.jpg, SINGLE_B

2、LOB) AS image) WHERE 借書證號=081101 執(zhí)行成功后查詢081101讀者的照片信息: SELECT 借書證號, 照片 FROM TReader WHRER 借書證號=081101 執(zhí)行結(jié)果如下所示:,8.1 導(dǎo)入讀者照片,說明:OPENROWSET行集函數(shù)用于大容量數(shù)據(jù)的導(dǎo)入導(dǎo)出,修改照片信息時(shí)該函數(shù)用于加載已經(jīng)存在的081101.jpg文件,并返回一個(gè)表。使用SELECT語句得到返回的表的內(nèi)容,語句中為該表定義了別名image。使用UPDATE語句可以直接將得到的內(nèi)容賦給TReader表的照片列,以二進(jìn)制格式存儲。除了可以加載圖片文件,OPENROWSET函數(shù)還可以加

3、載XML文件。,,8.2 導(dǎo)入讀者聯(lián)系方式,實(shí)現(xiàn)功能:如表8.1所示提供了081101、081102和081103借書證號讀者的聯(lián)系方式,要求將聯(lián)系方式導(dǎo)入到MBOOK數(shù)據(jù)庫的讀者信息表中。 方法一:使用UPDATE語句將081101讀者的聯(lián)系方式直接修改為表8.1所示的聯(lián)系方式,使用的SQL語句如下: USE MBOOK GO UPDATE TReader SET 聯(lián)系方式= WL 13900081101 211101 江蘇省 南京市 鼓樓區(qū)上海路3號 WHERE 借書證號=081101,,8.2 導(dǎo)入讀者聯(lián)系方式,執(zhí)行后使用SELECT語句查詢081101的聯(lián)系方式: SELECT 借書

4、證號, 聯(lián)系方式 FROM TReader WHERE 借書證號=081101 執(zhí)行結(jié)果如下所示:,說明:讀者的聯(lián)系方式是以XML格式的形式存放的,根據(jù)XML語法可知,讀者081101的為根元素,根元素下包含了讀者的、和信息。要存放XML數(shù)據(jù),存放數(shù)據(jù)的列或變量必須為xml數(shù)據(jù)類型。,,8.2 導(dǎo)入讀者聯(lián)系方式,方法二:將081102讀者的聯(lián)系方式存儲在081102.xml文件中,并將該文件導(dǎo)入到MBOOK數(shù)據(jù)庫該讀者的聯(lián)系方式中。 在D盤根目錄下新建一個(gè)文本文檔,輸入以下代碼: CM 13000081102 211100 江蘇省 鎮(zhèn)江市 京口區(qū)學(xué)府路28號 ,,,8.2 導(dǎo)入讀者聯(lián)系方式,將

5、文件名保存為081102.xml,打開“SQL Server Management Studio”,新建一個(gè)查詢窗口,輸入如下語句: USE MBOOK GO UPDATE TReader SET 聯(lián)系方式= (SELECT * FROM OPENROWSET(BULK ND:081102.xml, SINGLE_BLOB) AS temp_table) WHERE 借書證號=081102 執(zhí)行后使用SELECT語句查詢081102的聯(lián)系方式: SELECT 借書證號, 聯(lián)系方式 FROM TReader WHERE 借書證號=081102 執(zhí)行結(jié)果如下所示:,,8.3 查詢讀者聯(lián)系方式

6、,(1)查詢081101讀者的詳細(xì)地址。 實(shí)現(xiàn)方法:新建一個(gè)查詢窗口,輸入如下語句: USE MBOOK GO DECLARE contact xml SELECT contact=聯(lián)系方式 FROM TReader WHERE 借書證號=081101 SELECT contact.query(/聯(lián)系方式/地址/詳細(xì)地址) AS 詳細(xì)地址 執(zhí)行結(jié)果如下所示:,說明:以上語句中將讀者081101的聯(lián)系方式列上的內(nèi)容賦給xml變量contact,再通過XQuery語法中的XML數(shù)據(jù)類型方法query()方法查詢xml變量contact中“詳細(xì)地址”節(jié)點(diǎn)的內(nèi)容。query()方法中的參數(shù)指定到“詳細(xì)

7、地址”節(jié)點(diǎn)。,返回,,8.3 查詢讀者聯(lián)系方式,(2)查詢081102讀者“聯(lián)系方式”中的姓名。 實(shí)現(xiàn)方法:新建一個(gè)查詢窗口,輸入如下語句: DECLARE contact xml, name char(8) SELECT contact=聯(lián)系方式 FROM TReader WHERE 借書證號=081102 SET name=contact.value((/聯(lián)系方式/姓名)1, char(8)) SELECT name 姓名 執(zhí)行結(jié)果如下所示:,,L8.1 導(dǎo)入讀者照片,L1OPENROWSET行集函數(shù) 當(dāng)數(shù)據(jù)是以大容量的文件格式存在時(shí),直接插入的方式顯然不太合適。這時(shí)可以使用行集函數(shù)OPE

8、NROWSET來完成。OPENROWSET函數(shù)返回一個(gè)表,可以在查詢的FROM子句中像引用表名那樣引用OPENROWSET函數(shù)。將OPENROWSET函數(shù)返回的內(nèi)容用做INSERT或其他語句的源表,就可以將數(shù)據(jù)文件中的數(shù)據(jù)導(dǎo)入到SQL Server表中。 OPENROWSET函數(shù)的語法格式如下: OPENROWSET ( BULK data_file , SINGLE_BLOB | SINGLE_CLOB | SINGLE_NCLOB ),L1OPENROWSET行集函數(shù),說明: (1)BULK:使用OPENROWSET的BULK行集訪問接口讀取文件中的數(shù)據(jù)。在SQL Server中,OPE

9、NROWSET無須將數(shù)據(jù)文件中的數(shù)據(jù)加載到目標(biāo)表,便可讀取這些數(shù)據(jù)。這樣便可在單個(gè)SELECT語句中使用OPENROWSET。 (2)data_file:數(shù)據(jù)文件的完整路徑,該文件的數(shù)據(jù)將被復(fù)制到目標(biāo)表中。 (3)SINGLE_BLOB | SINGLE_CLOB | SINGLE_NCLOB:SINGLE_BLO表示將data_file的內(nèi)容作為類型為varbinary(MAX)的單行單列行集返回;SINGLE_CLOB表示通過以ASC格式讀取data_file,使用當(dāng)前數(shù)據(jù)庫的排序規(guī)則將內(nèi)容作為類型為varchar(MAX)的單行單列行集返回;SINGLE_NCLOB表示通過以UNICOD

10、E格式讀取data_file,使用當(dāng)前數(shù)據(jù)庫的排序規(guī)則將內(nèi)容作為類型為nvarchar(MAX)的單行單列行集返回。,,L1OPENROWSET行集函數(shù),(4)與SELECT一起使用的FROM子句可以調(diào)用OPENROWSET(BULK...)而非表名,同時(shí)可以實(shí)現(xiàn)完整的SELECT功能。帶有BULK選項(xiàng)的OPENROWSET函數(shù)在FROM子句中時(shí),需要使用AS子句指定一個(gè)別名。也可以指定列別名,如果未指定列別名列表,則格式化文件必須具有列名,指定列別名會覆蓋格式化文件中的列名,例如: SELECT FROM OPENROWSET(BULK...) AS table_alias SELECT F

11、ROM OPENROWSET(BULK...) AS table_alias(column_alias,...n),,,L1OPENROWSET行集函數(shù),【強(qiáng)化練習(xí)】假設(shè)081102.jpg文件保存在D盤根目錄下,在PXSCJ數(shù)據(jù)庫中新建一個(gè)Imagetable表,包含Name和Content兩列,分別存儲圖片文件名和圖片文件的內(nèi)容。使用OPENROWSET函數(shù)將081102.jpg文件導(dǎo)入數(shù)據(jù)表Imagetable中。 創(chuàng)建Imagetable表的語句如下: USE PXSCJ GO CREATE TABLE Imagetable ( Namechar(20)NOT NULL PRIMARY

12、 KEY, Contentvarbinary(MAX)NULL, ) 插入數(shù)據(jù)使用如下語句: INSERT INTO Imagetable (name, content) SELECT 081102.jpg AS name, * FROM OPENROWSET(BULK ND:081102.jpg, SINGLE_BLOB) AS note,,L1OPENROWSET行集函數(shù),圖片插入后可以使用SELECT語句查看插入了的數(shù)據(jù): SELECT * FROM Imagetable 執(zhí)行結(jié)果如下所示:,返回,L8.2 導(dǎo)入讀者聯(lián)系方式,L1XML XML(eXtensible Markup Lan

13、guage)即可擴(kuò)展標(biāo)記語言,它與HTML一樣,都是SGML(Standard Generalized Markup Language,標(biāo)準(zhǔn)通用標(biāo)記語言)。XML是Internet環(huán)境中跨平臺的、依賴于內(nèi)容的技術(shù),是當(dāng)前處理結(jié)構(gòu)化文檔信息的有力工具。擴(kuò)展標(biāo)記語言XML是一種簡單的數(shù)據(jù)存儲語言,使用一系列簡單的標(biāo)記描述數(shù)據(jù),而這些標(biāo)記可以用方便的方式建立,雖然XML占用的空間比二進(jìn)制數(shù)據(jù)要占用更多的空間,但XML極其簡單,易于掌握和使用。 XML是一種標(biāo)準(zhǔn)化的文檔格式語言,它使得發(fā)布者可以創(chuàng)建一個(gè)以不同方式查看、顯示或打印的文檔資源。XML與HTML的設(shè)計(jì)區(qū)別是:XML是用來存儲數(shù)據(jù)的,重在數(shù)據(jù)

14、本身;而HTML是用來定義數(shù)據(jù)的,重在數(shù)據(jù)的顯示模式。另外,XML是可擴(kuò)展的,因?yàn)樗峁┝艘粋€(gè)標(biāo)準(zhǔn)機(jī)制,使得任意文檔構(gòu)造者都能在任意XML文檔中定義新的XML標(biāo)記,這使得綜合的、多平臺的、應(yīng)用到應(yīng)用的協(xié)議的創(chuàng)建降低了門檻。,返回,L1XML,XML的簡單使其易于在任何應(yīng)用程序中讀寫數(shù)據(jù),這使XML很快成為數(shù)據(jù)交換的唯一公共語言,雖然不同的應(yīng)用軟件也支持其他的數(shù)據(jù)交換格式,但不久之后它們都將支持XML,那就意味著程序可以更容易地與Windows、Mac OS、Linux以及其他平臺下產(chǎn)生的信息結(jié)合,然后可以很容易加載XML數(shù)據(jù)到程序中進(jìn)行分析,并以XML格式輸出結(jié)果。 XML文檔是由DTD和XM

15、L文本組成。所謂DTD(Document Type Definition),簡單的說是一組關(guān)于標(biāo)記符的語法規(guī)則,表明XML文本是如何組織的。它是保證XML文檔格式正確的有效方法,可以通過比較XML文檔和DTD文件來確定文檔是否符合規(guī)范,元素和標(biāo)簽使用是否正確。,,L2XML語法,本小節(jié)將從一個(gè)簡單的XML實(shí)例開始介紹XML的語法,實(shí)例代碼如下: wang zhang Reminder Dont forget me this weekend! 12 ,,,,L2XML語法,XML文檔中的元素還可以帶有若干個(gè)屬性,屬性的名稱也是由用戶自己定義的,屬性的值必須添加引號。格式如下: 元素內(nèi)容 文件中的

16、“age=20”即為元素的屬性和值。 在編寫XML文本時(shí)需要注意以下幾點(diǎn)。 XML標(biāo)簽的名稱可以包含字母、數(shù)字及其他字符,不能以數(shù)字或標(biāo)點(diǎn)符號開始;不能以字符“xml”、“XML”或“Xml”等開始;不能包含空格。 XML語法是區(qū)分大小寫的,所以在定義XML標(biāo)簽時(shí)必須保持大小寫的一致性,例如,打開開始標(biāo)簽為“”,結(jié)束標(biāo)簽為“”就是錯(cuò)誤的寫法。 XML必須正確地嵌套,例如,以下的標(biāo)簽嵌套關(guān)系是錯(cuò)誤的: This text is bold and italic 必須修改為: This text is bold and italic,L2XML語法,XML文檔中允許空元素的存在,所謂的空元素就是只有

17、標(biāo)簽沒有實(shí)際內(nèi)容的元素,空元素有兩種表示方法。例如:“”或“”。 在XML文檔中所有的空格都會被保留。 可以在XML文檔中寫注釋,注釋形式與HTML中一樣,例如: XML中的實(shí)體引用。在XML文檔中有一些字符具有特殊意義,例如:如果把字符“<”放在XML元素中,會出錯(cuò),因?yàn)榻馕銎鲿阉?dāng)做新元素的開始。為了避免錯(cuò)誤,需要用其對應(yīng)的實(shí)體引用表示。XML中有5個(gè)預(yù)定義的實(shí)體引用,如表8.2所示。,表8.2 XML中的實(shí)體引用,返回,L8.3 查詢讀者聯(lián)系方式,L1XQuery語法 1XPath語法 XPath是一種在XML文檔中查找信息的語言,使用XPath的標(biāo)準(zhǔn)路徑表達(dá)式可以在XML文檔中選取相

18、應(yīng)的XML節(jié)點(diǎn)。在XPath中有7種類型的節(jié)點(diǎn):元素、屬性、文本、命名空間、處理指令、注釋和文檔(根)節(jié)點(diǎn)。例如:在之前創(chuàng)建的note.xml文件中,“”是根節(jié)點(diǎn),“wang”是元素節(jié)點(diǎn),“age=20”是屬性節(jié)點(diǎn)。 XPath是根據(jù)路徑表達(dá)式在XML文檔中查找信息的,其路徑表達(dá)式與Windows的文件路徑類似??梢园裍Path比做文件管理路徑,通過文件管理路徑,可以按照一定的規(guī)則查找到所需要的文件;同樣,依據(jù)XPath所制定的規(guī)則,也可以很方便地找到XML結(jié)構(gòu)文檔樹中的任何一個(gè)節(jié)點(diǎn)。XPath中常用的基本表達(dá)式在表8.3中列出。,表8.3 XPath中的常用表達(dá)式,L1XQuery語法,表8

19、.4中給出了一些XPath中路徑表達(dá)式的實(shí)例。,表8.4 XPath路徑表達(dá)式實(shí)例,L1XQuery語法,另外,還可以使用謂詞和通配符表達(dá)更為復(fù)雜的路徑表達(dá)式,如表8.5所示。,表8.5 復(fù)雜的路徑表達(dá)式實(shí)例,L1XQuery語法,2XML數(shù)據(jù)類型方法 SQL Server提供了一些內(nèi)置的用于XML數(shù)據(jù)類型的方法。由于XML數(shù)據(jù)是分層次的,具有完整的結(jié)構(gòu)和元數(shù)據(jù),所以在查詢XML實(shí)例時(shí)與普通數(shù)據(jù)類型不同,可以使用XML數(shù)據(jù)類型方法查詢存儲在xml類型的變量或列中的XML實(shí)例。常用的XML數(shù)據(jù)類型方法有以下幾種。 (1)query()方法。語法格式: query (XQuery) 該方法只有一個(gè)

20、參數(shù)XQuery,XQuery為一個(gè)字符串,用于指定查詢XML實(shí)例中的XML節(jié)點(diǎn)(如元素、屬性)的XQuery表達(dá)式。query()方法返回一個(gè)XML類型的結(jié)果。,,L1XQuery語法,【強(qiáng)化練習(xí)】聲明一個(gè)xml變量并將有關(guān)學(xué)生信息的XML數(shù)據(jù)分配給它,再使用query()方法對文檔指定XQuery來查詢子元素。 DECLARE xmldoc xml SET xmldoc= 王林 男 20 何麗 女 21 SELECT xmldoc.query(/school/class/student) AS 學(xué)生信息 執(zhí)行結(jié)果如下所示:,,,L1XQuery語法,(2)value()方法。語法格式

21、: value (XQuery, SQLType) value()方法對XML執(zhí)行XQuery查詢,并返回SQL類型的標(biāo)量值。通常,可以使用此方法從XML類型列、參數(shù)或變量內(nèi)存儲的XML實(shí)例中提取值。這樣就可以指定將XML數(shù)據(jù)與非XML列中的數(shù)據(jù)進(jìn)行合并或比較的SELECT查詢。 XQuery :XQuery表達(dá)式為一個(gè)字符串文字,從XML實(shí)例內(nèi)部檢索數(shù)據(jù)。XQuery必須最多返回一個(gè)值,否則將返回錯(cuò)誤。 SQLType:要返回的首選SQL數(shù)據(jù)類型,value()方法的返回類型要與SQLType參數(shù)匹配。 vaule()方法返回一個(gè)帶有結(jié)果的非XML數(shù)據(jù)類型,且只能返回單個(gè)值。 (3)exis

22、t()方法。語法格式: exist (XQuery) exist()方法返回一個(gè)“位”值,表示下列條件之一: 表示True(如果查詢中的XQuery表達(dá)式返回一個(gè)非空結(jié)果),即它至少返回一個(gè)XML節(jié)點(diǎn); 0,表示False(如果它返回一個(gè)空結(jié)果); NULL(如果執(zhí)行查詢的XML數(shù)據(jù)類型實(shí)例包含NULL)。,,,L1XQuery語法,(4)modify()方法。語法格式: modify (XML_DML) 使用該方法可以修改XML文檔的內(nèi)容,也可以修改XML類型變量或列的內(nèi)容等。XML_DML參數(shù)是XML數(shù)據(jù)操作語言(DML)中的字符串,使用XML DML語句可以在XML數(shù)據(jù)中插入、更新或刪除

23、節(jié)點(diǎn)。modify()方法只能在UPDATE語句的SET子句中使用。 XML數(shù)據(jù)修改語言(XML DML)是對XQuery語言的擴(kuò)展,使XQuery語言能夠進(jìn)行數(shù)據(jù)操作(DML)。XML DML將下列區(qū)分大小寫的關(guān)鍵字添加到XQuery中:insert(插入)、delete(刪除)、replace value of(替換)。 XML DML中insert關(guān)鍵字的功能是將一個(gè)或多個(gè)節(jié)點(diǎn)作為XML實(shí)例中節(jié)點(diǎn)的子節(jié)點(diǎn)或同級節(jié)點(diǎn)插入到XML實(shí)例中。語法格式如下: insert Expression1 as first | as last into | after | beforeExpression2

24、,L1XQuery語法,說明: Expression1:標(biāo)識要插入的一個(gè)或多個(gè)節(jié)點(diǎn)。 Expression2:標(biāo)識XML實(shí)例中的節(jié)點(diǎn)。Expression1標(biāo)識的節(jié)點(diǎn)是相對于Expression2標(biāo)識的節(jié)點(diǎn)插入的。Expression2可以是XQuery表達(dá)式,返回當(dāng)前被引用的文檔中現(xiàn)有節(jié)點(diǎn)的引用。如果返回多個(gè)節(jié)點(diǎn),則插入失敗。如果Expression2返回一個(gè)空序列,則不會發(fā)生插入操作,并且不會返回任何錯(cuò)誤。 into | after | before:into關(guān)鍵字表示Expression1標(biāo)識的節(jié)點(diǎn)作為Expression2標(biāo)識的節(jié)點(diǎn)的子節(jié)點(diǎn)插入。如果Expression2中的節(jié)點(diǎn)已有一

25、個(gè)或多個(gè)子節(jié)點(diǎn),則必須使用as first或as last來指定所需的新節(jié)點(diǎn)的添加位置,分別在子列表的開頭或末尾。插入屬性時(shí)忽略as first和as last關(guān)鍵字。after表示Expression1標(biāo)識的節(jié)點(diǎn)作為Expression2標(biāo)識的節(jié)點(diǎn)的同級節(jié)點(diǎn)直接插入在其后面。而before則表示Expression1標(biāo)識的節(jié)點(diǎn)作為Expression2標(biāo)識的節(jié)點(diǎn)的同級節(jié)點(diǎn)直接插入在其前面。,,,,L1XQuery語法, XML DML語句的delete關(guān)鍵字的功能是刪除XML實(shí)例中的節(jié)點(diǎn)。語法格式如下: delete Expression 表達(dá)式Expression不能是根節(jié)點(diǎn)。如果表達(dá)式返

26、回空序列,則不進(jìn)行刪除,不返回錯(cuò)誤。 XML DML語句的replace value of關(guān)鍵字的功能是在XML文檔中更新節(jié)點(diǎn)的值。語法格式如下: replace value of Expression1 with Expression2 Expression1標(biāo)識其值要更新的節(jié)點(diǎn),它必須僅標(biāo)識一個(gè)單個(gè)節(jié)點(diǎn)。Expression2用于指定節(jié)點(diǎn)的新值。 【強(qiáng)化練習(xí)】使用XML DML語句在一段XML數(shù)據(jù)中一個(gè)節(jié)點(diǎn)的后面添加一個(gè)節(jié)點(diǎn)。 DECLARE xmldoc xml SET xmldoc=王林男20 SELECT xmldoc AS 插入節(jié)點(diǎn)前數(shù)據(jù) SET xmldoc.modify(ins

27、ert 1991-02-10 after (/student/sex)1) SELECT xmldoc 插入節(jié)點(diǎn)后數(shù)據(jù),L1XQuery語法,執(zhí)行結(jié)果如下所示:,,L1XQuery語法,(5)nodes()方法。nodes()方法可以將XML實(shí)例拆分成關(guān)系數(shù)據(jù)。nodes()方法的結(jié)果是一個(gè)包含原始XML實(shí)例的邏輯副本的行集。在這些邏輯副本中,每個(gè)行示例的上下文節(jié)點(diǎn)都被設(shè)置成由查詢表達(dá)式標(biāo)識的節(jié)點(diǎn)之一。這樣,后續(xù)的查詢可以瀏覽與這些上下文節(jié)點(diǎn)相關(guān)的節(jié)點(diǎn)。語法格式: nodes (XQuery) as Table(Column) XQuery參數(shù)是一個(gè)字符串形式的XQuery表達(dá)式。如果查詢表達(dá)

28、式構(gòu)造節(jié)點(diǎn),這些已構(gòu)造的節(jié)點(diǎn)將在結(jié)果行集中顯示。Table(Column)用于指定結(jié)果行集的表名稱和列名稱。,,L1XQuery語法,【強(qiáng)化練習(xí)】使用nodes()方法查找并列的節(jié)點(diǎn)。 DECLARE xmldoc xml SET xmldoc= 王林 男 20 王燕 女 21 SELECT T.a.query(.) AS 結(jié)果 FROM xmldoc.nodes(/class/student) T(a) 執(zhí)行結(jié)果如下所示:,,L1XQuery語法,3XQuery查詢 SQL Server支持的XQuery基本語法中除了能夠使用Xpath路徑表達(dá)式進(jìn)行查詢,還包含一個(gè)通用標(biāo)準(zhǔn)格式:FLWO

29、R表達(dá)式,F(xiàn)LWOR是“For,Let,Where,Order by,Return”的縮寫。以下的示例說明了FLWOR的用法(假設(shè)book元素是根元素): for $x in doc(note.xml)/book/note let $y :=/book/note/to where $x/number<20 order by $x/brand return $x/brand 說明:FLWOR表達(dá)式可以由以下幾部分組成。 for語句:將note.xml文件中book元素下所有的note元素提取出來賦給變量$x。其中,doc()是內(nèi)置函數(shù),作用是打開相應(yīng)的xml文檔。 let語句:該語句可選,用于在

30、XQuery表達(dá)式中為變量賦值。 where語句:該語句可選,用于選取note元素下number元素小于20的note元素。 order by語句:該語句可選,用于指定查詢結(jié)果按照brand升序排序。 return語句:return語句中的表達(dá)式用于構(gòu)造FLWOR表達(dá)式的結(jié)果。,,L1XQuery語法,【強(qiáng)化練習(xí)】 (1)查詢xml文檔中age元素小于20的name元素的數(shù)據(jù)。 DECLARE xmldoc xml SET xmldoc= 王林男20 王燕女19 程明男18 SELECT xmldoc.query(/class/studentage<20) 執(zhí)行結(jié)果如下所示:,,L1XQuery語法,(2)使用FLWOR表達(dá)式查詢XML數(shù)據(jù)。 DECLARE x XML SET x= Manu step 1 at Loc 1 Manu step 2 at Loc 1 Manu step 3 at Loc 1 Manu step 1 at Loc 2 Manu step 2 at Loc 2 Manu step 3 at Loc 2 SELECT x.query( for $step in /ManuInstructions/Location1 return string($step) ) 執(zhí)行結(jié)果如下所示:,

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!