sp_xml_preparedocument sp_xml_preparedocument - 北京怡康軟件科技有限公司 資源網(wǎng) "/>

亚洲av色香蕉一区二区三区,十四以下岁毛片带血a级,亚洲 校园 欧美 国产 另类,亚洲av日韩av一区谷露,色欲av无码一区二区三区

  • 相關(guān)軟件
    >sp_xml_preparedocument 創(chuàng)建者:webmaster 更新時間:2006-02-16 15:51

    讀取作為輸入提供的可擴展標(biāo)記語言 (XML) 文本,然后使用 MSXML 語法分析器 (Msxml2.dll) 對其進行分析,并提供分析后的文檔供您使用。分析后的文檔是 XML 文檔中各節(jié)點(元素、特性、文本、注釋等)的樹型表示法。



    sp_xml_preparedocument 返回一個句柄,可用于訪問 XML 文檔的新創(chuàng)建的內(nèi)部表示方式。該句柄在連接到 Microsoft® SQL Server™ 2000 期間保持有效,直到重置連接或執(zhí)行 sp_xml_removedocument 使句柄無效為止。



    說明  分析過的文檔存儲在 SQL Server 2000 的內(nèi)部高速緩存中。MSXML 語法分析器使用 SQL Server 可用總內(nèi)存的八分之一。若要避免內(nèi)存不足,請運行 sp_xml_removedocument 以釋放內(nèi)存。



    語法


    sp_xml_preparedocument hdoc OUTPUT

    [, xmltext]

    [, xpath_namespaces]



    參數(shù)


    hdoc



    是新創(chuàng)建的文檔的句柄。hdoc 的數(shù)據(jù)類型為 integer。



    [xmltext]



    是原 XML 文檔。MSXML 語法分析器分析該 XML 文檔。xmltext 是 text 類型(char、ncharvarchar、nvarchartextntext)的參數(shù)。默認(rèn)值是 NULL,在這種情況下,將創(chuàng)建空 XML 文檔的內(nèi)部表示法。



    [xpath_namespaces]



    指定 OPENXML 的行和列 XPath 表達(dá)式中所使用的命名空間聲明。默認(rèn)值是 <root xmlns:mp="urn:schemas-microsoft-com:xml-metaprop">。

    xpath_namespaces 通過符合語法規(guī)則的 XML 文檔的方式,為在 OPENXML 的 Xpath 表達(dá)式中使用的前綴提供命名空間 URI。xpath_namespaces 聲明前綴必須用于引用命名空間 urn:schemas-microsoft-com:xml-metaprop,該命名空間提供有關(guān)分析后的 XML 元素的元數(shù)據(jù)。盡管可以使用此方法為元屬性命名空間重新定義命名空間前綴,但此命名空間不會丟失。此前綴 mp 對 urn:schemas-microsoft-com:xml-metaprop 仍有效,即使 xpath_namespaces 不包含此類聲明。xpath_namespaces 是 text 類型(charncharvarchar、nvarchar、text ntext)的參數(shù)。



    返回代碼值


    0(成功)或 >0(失?。?/P>

    權(quán)限


    執(zhí)行權(quán)限默認(rèn)授予 public 角色。



    示例


    A. 為符合語法規(guī)則的 XML 文檔準(zhǔn)備內(nèi)部表示方式


    下例返回作為輸入提供的新創(chuàng)建的 XML 文檔內(nèi)部表示法的句柄。在對 sp_xml_preparedocument 的調(diào)用中,使用了默認(rèn)命名空間前綴映射。



    DECLARE @hdoc int
    DECLARE @doc varchar(1000)
    SET @doc ='
    <ROOT>
    <Customer CustomerID="VINET" ContactName="Paul Henriot">
      <Order CustomerID="VINET" EmployeeID="5" OrderDate="1996-07-04T00:00:00">
        <OrderDetail OrderID="10248" ProductID="11" Quantity="12"/>
        <OrderDetail OrderID="10248" ProductID="42" Quantity="10"/>
      </Order>
    </Customer>
    <Customer CustomerID="LILAS" ContactName="Carlos Gonzlez">
      <Order CustomerID="LILAS" EmployeeID="3" OrderDate="1996-08-16T00:00:00">
        <OrderDetail OrderID="10283" ProductID="72" Quantity="3"/>
      </Order>
    </Customer>
    </ROOT>'
    --Create an internal representation of the XML document.
    EXEC sp_xml_preparedocument @hdoc OUTPUT, @doc
    -- Remove the internal representation.
    exec sp_xml_removedocument @hdoc


    B. 為帶 DTD 的符合語法規(guī)則的 XML 文檔準(zhǔn)備內(nèi)部表示方式


    下例返回作為輸入提供的新創(chuàng)建的 XML 文檔內(nèi)部表示法的句柄。存儲過程根據(jù)文檔中包含的 DTD 來驗證裝載的文檔。在對 sp_xml_preparedocument 的調(diào)用中,使用了默認(rèn)命名空間前綴映射。



    DECLARE @hdoc int
    DECLARE @doc varchar(2000)
    SET @doc = '
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE root
    [<!ELEMENT root (Customers)*>
    <!ELEMENT Customers EMPTY>
    <!ATTLIST Customers CustomerID CDATA #IMPLIED ContactName CDATA #IMPLIED>]>
    <root>
    <Customers CustomerID="ALFKI" ContactName="Maria Anders"/>
    </root>'

    EXEC sp_xml_preparedocument @hdoc OUTPUT, @doc


    C. 指定命名空間 URI


    下例返回作為輸入提供的新創(chuàng)建的 XML 文檔內(nèi)部表示法的句柄。在對 sp_xml_preparedocument 的調(diào)用中,保留了元屬性命名空間映射的 mp 前綴,并將 xyz 映射前綴添加到了命名空間 urn:MyNamespace。



    DECLARE @hdoc int
    DECLARE @doc varchar(1000)
    SET @doc ='
    <ROOT>
    <Customer CustomerID="VINET" ContactName="Paul Henriot">
      <Order CustomerID="VINET" EmployeeID="5"
          OrderDate="1996-07-04T00:00:00">
        <OrderDetail OrderID="10248" ProductID="11" Quantity="12"/>
        <OrderDetail OrderID="10248" ProductID="42" Quantity="10"/>
      </Order>
    </Customer>
    <Customer CustomerID="LILAS" ContactName="Carlos Gonzlez">
      <Order CustomerID="LILAS" EmployeeID="3"
          OrderDate="1996-08-16T00:00:00">
        <OrderDetail OrderID="10283" ProductID="72" Quantity="3"/>
      </Order>
    </Customer>
    </ROOT>'
    --Create an internal representation of the XML document.
    EXEC sp_xml_preparedocument @hdoc OUTPUT, @doc, '<root xmlns:xyz="run:MyNamespace"/>'
    相關(guān)文章
    本頁查看次數(shù):