自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

ADO.NET運(yùn)用具有BLOB字段的ExecuteXmlReader

開發(fā) 后端
這里就ADO.NET運(yùn)用ExecuteXmlReader,ExcecuteReader通過一個托管指針(managed cursor)(data reader)來返回數(shù)據(jù),而ExecuteScaler返回結(jié)果集中的第一個值,把它作為一個標(biāo)量值。

掌握了一門技術(shù)的理論知識你未必可以很好的運(yùn)用它,因為在實際和理論還有一個過渡,這里我們就來看看怎樣更好的對ADO.NET運(yùn)用提高效果。用于SQL Server的.NET數(shù)據(jù)提供者(data provider)使用了數(shù)據(jù)庫提供的XML擴(kuò)展名,并提供了一個額外的方法(ExecuteXmlReader)來執(zhí)行查詢。命令對象上的所有的執(zhí)行者(例如ExecuteReader 和ExecuteScaler)都采用不同的方法來得到結(jié)果集。

#T#ExcecuteReader通過一個托管指針(managed cursor)(data reader)來返回數(shù)據(jù),而ExecuteScaler返回結(jié)果集中的第一個值,把它作為一個標(biāo)量值。ExecuteXmlReader執(zhí)行查詢,并返回已經(jīng)綁定到一個XmlTextReader對象的基于XML的輸出流。通過這種方式,你就不需要做額外的工作來以XML的方式加工數(shù)據(jù)了。要實現(xiàn)這一點,查詢字符串必須返回XML數(shù)據(jù)。對SQL Server來說,當(dāng)查詢字符串包含一個FOR XML子句時,就可以實現(xiàn)它。盡管這只是一種可能。

一個不太為人所知的情況是,要使ExecuteXmlReader工作,讓結(jié)果集包含XML數(shù)據(jù)就足夠了。下面的查詢方法很好,只要列包含XML格式的文本就行ADO.NET運(yùn)用見圖1:SELECT data FROM table WHERE key=1

ADO.NET運(yùn)用查詢XML數(shù)據(jù)

圖1. ADO.NET運(yùn)用查詢XML數(shù)據(jù)

這個列是個典型的BLOB或ntext字段,其文本顯示為XML。簡要地看看ExecuteXmlReader方法的內(nèi)部結(jié)構(gòu)會有助于我們的理解。該方法用ExecuteReader來執(zhí)行查詢,并從數(shù)據(jù)提供者得到一個數(shù)據(jù)流對象。接下來,它將數(shù)據(jù)流綁定到XmlTextReader類的一個新創(chuàng)建的實例上,這個實例被返回給調(diào)用者。連接一直處于忙碌狀態(tài),直到XML reader停止工作。SQL Server提供者是唯一的提供者,它提供了方法讓我們從一個XML reader直接讀取數(shù)據(jù),但這種做法更多的是與提供者有關(guān),而與數(shù)據(jù)庫性能的關(guān)系并不大。Oracle支持XML查詢,但Oracle的數(shù)據(jù)提供者并不支持XML查詢。相比之下,為OLE DB數(shù)據(jù)提供者編寫一個ExecuteXmlReader方法并不難(點此下載實例)。

責(zé)任編輯:田樹 來源: 博客
相關(guān)推薦

2009-11-03 17:35:43

ADO.NET對象

2009-12-23 11:25:30

ADO.NET處理

2009-11-13 14:29:13

ADO.NET Mer

2009-11-11 10:39:19

ADO.NET Fin

2009-11-03 14:46:47

ADO.NET數(shù)據(jù)庫

2011-05-20 11:31:07

ADO.NET

2009-11-13 11:18:22

ADO.NET修改數(shù)據(jù)

2009-12-28 15:11:36

ADO.NET專家

2011-06-02 09:39:29

ADO.NET

2009-11-03 16:37:10

2009-09-14 13:37:25

LINQ ADO.NE

2009-07-06 10:43:51

ADO.NET

2010-01-04 10:48:30

ADO.NET特色

2009-10-29 13:34:01

ADO.NET對象

2009-11-12 14:37:26

ADO.NET結(jié)構(gòu)

2009-11-03 17:25:59

ADO.NET編程技巧

2009-11-12 10:32:47

ADO.NET技術(shù)

2009-11-12 13:26:56

使用ADO.NET參數(shù)

2009-12-18 14:37:56

ADO.NET模型

2009-11-12 13:53:27

ADO.NET Sel
點贊
收藏

51CTO技術(shù)棧公眾號