文章編號: 252767 - 上次校閱: 2004年7月1日 - 版次: 2.6

如何在 Visual Basic 中取得的 ADO 資料錄集的 XML 表示

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。
全部展開 | 全部摺疊

結論

當您想資料錄集的 XML 表示您可以使用新的 ADODB.Stream 物件擷取 XML 字串。在 ADO 2.5 中並不需要使用儲存在磁碟上儲存方法來擷取 XML 資料錄集所產生的字串。

其他相關資訊

若要擷取資料錄集的 XML,使用下列程式碼。請務必有 [ActiveX 資料物件 2.5 庫] 的參考。程式碼假設資料錄集是開啟中並填入。
    Dim oStream As ADODB.Stream
    Set oStream = New ADODB.Stream
        
    oRecordset.Save oStream, adPersistXML
    
    Dim sXML As String
    sXML = oStream.ReadText
    
    oStream.Close
    Set oStream = Nothing
				

比方說您可以使用 sXML 字串出在 ASP 網頁中撰寫或剖析與 XSL 轉換。

產生 XML 是類似下列的。這是在 Pubs 資料庫中的 SQL Server Authors 資料表的範例:
<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
    xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
    xmlns:rs='urn:schemas-microsoft-com:rowset'
    xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
    <s:ElementType name='row' content='eltOnly' rs:CommandTimeout='30'>
        <s:AttributeType name='au_id' rs:number='1' rs:writeunknown='true'>
            <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='11'
             rs:maybenull='false'/>
        </s:AttributeType>
        <s:AttributeType name='au_lname' rs:number='2' rs:writeunknown='true'>
            <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='40'
             rs:maybenull='false'/>
        </s:AttributeType>
        <s:AttributeType name='au_fname' rs:number='3' rs:writeunknown='true'>
            <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='20'
             rs:maybenull='false'/>
        </s:AttributeType>
        <s:AttributeType name='phone' rs:number='4' rs:writeunknown='true'>
            <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='12'
             rs:fixedlength='true' rs:maybenull='false'/>
        </s:AttributeType>
        <s:AttributeType name='address' rs:number='5' rs:nullable='true'
             rs:writeunknown='true'>
            <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='40'/>
        </s:AttributeType>
        <s:AttributeType name='city' rs:number='6' rs:nullable='true'
             rs:writeunknown='true'>
            <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='20'/>
        </s:AttributeType>
        <s:AttributeType name='state' rs:number='7' rs:nullable='true'
             rs:writeunknown='true'>
            <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='2'
             rs:fixedlength='true'/>
        </s:AttributeType>
        <s:AttributeType name='zip' rs:number='8' rs:nullable='true'
             rs:writeunknown='true'>
            <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='5'
             rs:fixedlength='true'/>
        </s:AttributeType>
        <s:AttributeType name='contract' rs:number='9' rs:writeunknown='true'>
            <s:datatype dt:type='boolean' dt:maxLength='2' rs:fixedlength='true'
             rs:maybenull='false'/>
        </s:AttributeType>
        <s:extends type='rs:rowbase'/>
    </s:ElementType>
</s:Schema>
<rs:data>
    <z:row au_id='172-32-1176' au_lname='White' au_fname='Johnson'
         phone='408 496-7223' address='10932 Bigge Rd.' city='Menlo Park'
         state='CA' zip='94025' contract='True'/>
    <z:row au_id='213-46-8915' au_lname='Green' au_fname='Marjorie'
         phone='415 986-7020' address='309 63rd St. #411' city='Oakland'
         state='CA' zip='94618' contract='True'/>
    <z:row au_id='238-95-7766' au_lname='Carson' au_fname='Cheryl'
         phone='415 548-7723' address='589 Darwin Ln.' city='Berkeley'
         state='CA' zip='94705' contract='True'/>
    <z:row au_id='267-41-2394' au_lname='O&#x27;Leary' au_fname='Michael'
         phone='408 286-2428' address='22 Cleveland Av. #14' city='San Jose'
         state='CA' zip='95128' contract='True'/>
    <z:row au_id='274-80-9391' au_lname='Straight' au_fname='Dean'
         phone='415 834-2919' address='5420 College Av.' city='Oakland'
         state='CA' zip='94609' contract='True'/>
    <z:row au_id='341-22-1782' au_lname='Smith' au_fname='Meander'
         phone='913 843-0462' address='10 Mississippi Dr.' city='Lawrence'
         state='KS' zip='66044' contract='False'/>
    <z:row au_id='409-56-7008' au_lname='Bennet' au_fname='Abraham'
         phone='415 658-9932' address='6223 Bateman St.' city='Berkeley'
         state='CA' zip='94705' contract='True'/>
    <z:row au_id='427-17-2319' au_lname='Dull' au_fname='Ann'
         phone='415 836-7128' address='3410 Blonde St.' city='Palo Alto'
         state='CA' zip='94301' contract='True'/>
    <z:row au_id='472-27-2349' au_lname='Gringlesby' au_fname='Burt'
         phone='707 938-6445' address='PO Box 792' city='Covelo'
         state='CA' zip='95428' contract='True'/>
    <z:row au_id='486-29-1786' au_lname='Locksley' au_fname='Charlene'
         phone='415 585-4620' address='18 Broadway Av.' city='San Francisco'
         state='CA' zip='94130' contract='True'/>
    <z:row au_id='527-72-3246' au_lname='Greene' au_fname='Morningstar'
         phone='615 297-2723' address='22 Graybar House Rd.' city='Nashville'
         state='TN' zip='37215' contract='False'/>
    <z:row au_id='648-92-1872' au_lname='Blotchet-Halls'
         au_fname='Reginald' phone='503 745-6402' address='55 Hillsdale Bl.'
         city='Corvallis' state='OR' zip='97330' contract='True'/>
    <z:row au_id='672-71-3249' au_lname='Yokomoto' au_fname='Akiko'
         phone='415 935-4228' address='3 Silver Ct.' city='Walnut Creek'
         state='CA' zip='94595' contract='True'/>
    <z:row au_id='712-45-1867' au_lname='del Castillo' au_fname='Innes'
         phone='615 996-8275' address='2286 Cram Pl. #86' city='Ann Arbor'
         state='MI' zip='48105' contract='True'/>
    <z:row au_id='722-51-5454' au_lname='DeFrance' au_fname='Michel'
         phone='219 547-9982' address='3 Balding Pl.' city='Gary'
         state='IN' zip='46403' contract='True'/>
    <z:row au_id='724-08-9931' au_lname='Stringer' au_fname='Dirk'
         phone='415 843-2991' address='5420 Telegraph Av.' city='Oakland'
         state='CA' zip='94609' contract='False'/>
    <z:row au_id='724-80-9391' au_lname='MacFeather' au_fname='Stearns'
         phone='415 354-7128' address='44 Upland Hts.' city='Oakland'
         state='CA' zip='94612' contract='True'/>
    <z:row au_id='756-30-7391' au_lname='Karsen' au_fname='Livia'
         phone='415 534-9219' address='5720 McAuley St.' city='Oakland'
         state='CA' zip='94609' contract='True'/>
    <z:row au_id='807-91-6654' au_lname='Panteley' au_fname='Sylvia'
         phone='301 946-8853' address='1956 Arlington Pl.' city='Rockville'
         state='MD' zip='20853' contract='True'/>
    <z:row au_id='846-92-7186' au_lname='Hunter' au_fname='Sheryl'
         phone='415 836-7128' address='3410 Blonde St.' city='Palo Alto'
         state='CA' zip='94301' contract='True'/>
    <z:row au_id='893-72-1158' au_lname='McBadden' au_fname='Heather'
         phone='707 448-4982' address='301 Putnam' city='Vacaville'
         state='CA' zip='95688' contract='False'/>
    <z:row au_id='899-46-2035' au_lname='Ringer' au_fname='Anne'
         phone='801 826-0752' address='67 Seventh Av.' city='Salt Lake City'
         state='UT' zip='84152' contract='True'/>
    <z:row au_id='998-72-3567' au_lname='Ringer' au_fname='Albert'
         phone='801 826-0752' address='67 Seventh Av.' city='Salt Lake City'
         state='UT' zip='84152' contract='True'/>
</rs:data>
</xml>
				
檢查下面參照,如需詳細資訊。

?考

您可以在找到更多的使用方式案例 MSDN information on Streams and persistence (http://msdn.microsoft.com/en-us/library/ms677550.aspx) ,從 Records And Streams (http://msdn.microsoft.com/en-us/library/ms675955(VS.85).aspx) 說明文件。

如果您有興趣 XML 檢查 MSDN XML Developer Center (http://msdn.microsoft.com/en-us/xml/default.aspx) 深入] 及 [進階初學者資訊。
看看 http://www.microsoft.com/biztalk/en/us/default.aspx (http://www.microsoft.com/biztalk/en/us/default.aspx) 站台,如需 「 BizTalk 」 開發案的相關資訊。

也檢查 http://msdn.microsoft.com/en-us/data/aa937729.aspx (http://msdn.microsoft.com/en-us/data/aa937729.aspx) MDAC 和 ADO 有關的詳細資訊。

這篇文章中的資訊適用於:
  • Microsoft Data Access Components 2.5
關鍵字:?
kbmt kbhowto kbmsxmlnosweep KB252767 KbMtzh
機器翻譯機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:252767? (http://support.microsoft.com/kb/252767/en-us/ )
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。