以下是範本的一般形式,顯示了指定 SQL 查詢和 XPath 查詢的方式:
<ROOT xmlns:sql="urn:schemas-microsoft-com:xml-sql" sql:xsl='XSL FileName' > <sql:header> <sql:param>..</sql:param> <sql:param>..</sql:param>...n </sql:header> <sql:query> sql statement(s) </sql:query> <sql:xpath-query mapping-schema="SchemaFileName.xml"> XPath query </sql:xpath-query> </ROOT>
範本中的任何元素都是可選的。元素
指定此標記以提供所得到的 XML 文件的單一頂層元素(也稱為根標記)。
此標記用於保存所有標題值。在目前的實作方案中,只能在此標記中指定
此元素用於定義在範本內傳遞到查詢的參數。每個 元素定義一個參數。可以在
此元素用於指定 SQL 查詢。可以在範本中指定多個
該元素用於指定 XPath 查詢。因為 XPath 查詢是在具有批次的 XML 資料簡化 (XDR) 架構上執行,所以必須使用 mapping-schema 特性來指定架構檔案名稱。
sql:xsl
此特性用於指定將套用於所得到的 XML 文件的可擴充樣式表語言 (XSL) 樣式表。在指定映射架構檔案時,可以指定相對或絕對路徑。指定的相對路徑是相對於與 template 類型的虛擬名稱關聯的目錄。例如,如果與 template 類型的虛擬名稱相關聯的目錄是 C:\Template,那麼為 sql:xsl 指定的相對路徑 Xyz/MyXSL.xml 將會對應到 C:\Template\Xyz\MyXSL.xml。
mapping-schema
此特性用於識別帶有批註的 XDR 架構。僅在範本中執行 XPath 查詢時才指定該特性。 XPath 查詢在具有核准的 XDR 架構上執行。在指定映射架構檔案時,可以指定相對或絕對路徑。指定的相對路徑是相對於與 template 類型的虛擬名稱關聯的目錄。例如,如果與 template 類型的虛擬名稱關聯的目錄是 C:\Template,則相對路徑(為 mapping-schema 指定的 schema/MSchema.xml)會對應到 C:\Template\Schema\MSchema.xml。
說明 每個
如果設定了 contenttype,則 Sqlisapi.dll 將標題資訊傳回瀏覽器。如果沒有設定 contenttype,則 urlmon 使用範本檔案中的第一個字元來確定內容類型。如果範本中的第一個字元是 < 字元或 Unicode 位元組順序標誌 (0xFFFE),則將 text/xml 作為內容類型傳回瀏覽器,且瀏覽器顯示結果。否則,Sqlisapi.dll 不發送用以指導瀏覽器如何顯示結果的內容類型標題資訊;因此,在瀏覽器中將看不到結果。
可以在 URL 範本中指定範本之前,必須使用用於 SQL Server 的 IIS 虛擬目錄管理實用工具建立 template 類型的虛擬名稱。有關更多信息,請參閱使用用於 SQL Server 的 IIS 虛擬目錄管理實用工具。
儲存範本
範本儲存在與template 類型的虛擬名稱關聯的目錄或它的子目錄中:
如果範本儲存在與template 類型的虛擬名稱關聯的目錄中,則URL 查詢的形式如下:
http://IISServer/nwind/TemplateVirtualName/TemplateFile.xml
如果範本儲存在與template 類型(xyz) 的虛擬名稱關聯的子目錄中,則URL 查詢的形式如下:
http://IISServer/nwind/TemplateVirtualName/xyz/TemplateFile.xml
對於在URL 中直接指定的XPath 查詢,不支援命名空間。如果希望在XPath 查詢中使用命名空間,則應使用template
以上就是使用XML 模板(MSSQL手冊)的內容,更多相關內容請關注PHP中文網(www.php.cn )!