`

在sql2005中对不同XML的解析.

阅读更多
--联机帮助:ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.zh-CHS/udb9/html/689297f3-adb0-4d8d-bf62-cfda26210164.htm
--eg1.
DECLARE @idoc int;
DECLARE @doc varchar(4000);
SET @doc ='
 <flight><datetime> 2007-11-22   09:27:04 </datetime><method> MOD </method><type> A </type><flightinfor><flightattr> 21 </flightattr><aircrafttype> E145 </aircrafttype></flightinfor></flight>
'
EXEC sp_xml_preparedocument @Idoc OUTPUT, @doc  --形成各节点(元素、属性、文本和注释等)的树状表示形式 返回一个句柄
 SELECT * FROM OPENXML (@Idoc, '/FLIGHT/FLIGHTINFOR',2)WITH (
			dt DATETIME  '../DATETIME'
			,METHOD varchar(20) '../METHOD'
			,tp char(1)'../TYPE'
			,FLIGHTATTR  int  'FLIGHTATTR'
			,AIRCRAFTTYPE varchar(10)'AIRCRAFTTYPE'
)
exec sp_xml_removedocument @Idoc
--结果:
/*
dt	METHOD	tp	FLIGHTATTR	AIRCRAFTTYPE
2007-11-22 09:27:04.000	MOD	A	21	E145
*/

--eg2.
DECLARE @idoc int
DECLARE @doc varchar(1000)
SET @doc ='
<root><customer customerid="VINET" contactname="Paul Henriot"><order customerid="VINET" orderid="10248" employeeid="5" orderdate="1996-07-04T00:00:00"><orderdetail productid="11" quantity="12"></orderdetail><orderdetail productid="42" quantity="10"></orderdetail></order></customer><customer customerid="LILAS" contactname="Carlos Gonzlez"><order customerid="LILAS" orderid="10283" employeeid="3" orderdate="1996-08-16T00:00:00"><orderdetail productid="72" quantity="3"></orderdetail></order></customer></root>'
--Create an internal representation of the XML document.
EXEC sp_xml_preparedocument @idoc OUTPUT, @doc
-- SELECT stmt using OPENXML rowset provider
SELECT *
FROM   OPENXML (@idoc, '/ROOT/Customer/Order/OrderDetail',2)
         WITH (CustomerID2  varchar(10) '../../@CustomerID' ,
				ContactName varchar(20)  '../../@ContactName',
				OrderID       int         '../@OrderID',
               CustomerID  varchar(10) '../@CustomerID',
               OrderDate   datetime    '../@OrderDate',
               ProdID      int         '@ProductID',
               Qty         int         '@Quantity')
--结果:
/*
CustomerID2	ContactName	OrderID	CustomerID	OrderDate	ProdID	Qty
VINET	Paul Henriot	10248	VINET	1996-07-04 00:00:00.000	11	12
VINET	Paul Henriot	10248	VINET	1996-07-04 00:00:00.000	42	10
LILAS	Carlos Gonzlez	10283	LILAS	1996-08-16 00:00:00.000	72	3
*/

--eg3.
DECLARE @idoc int;
DECLARE @doc varchar(4000);
SET @doc ='
 <flight><c>sdfsdf</c><datetime> 2007-11-22   09:27:04 </datetime><method> MOD </method><method> MOD23 </method><method> MOD22 </method><method> MOD2 5</method><type> A </type><flightinfor><flightattr> 21 </flightattr><aircrafttype> E145 </aircrafttype><method> MOD22 </method><c2><c3>dfsdfs</c3></c2></flightinfor></flight>
'
EXEC sp_xml_preparedocument @Idoc OUTPUT, @doc  --形成各节点(元素、属性、文本和注释等)的树状表示形式 返回一个句柄
 SELECT * FROM OPENXML (@Idoc, '/FLIGHT',2)WITH (
--			DATETIME2 DATETIME  '../DATETIME'
			METHOD varchar(200) '..//METHOD/'
--			,TYPE char(1) '../TYPE'
--			,FLIGHTATTR  int  'FLIGHTATTR'
--			,AIRCRAFTTYPE varchar(10)'AIRCRAFTTYPE'
--,METHOD2 varchar(10) 'METHOD'
)
exec sp_xml_removedocument @Idoc

--结果:
/*
sdfsdf  2007-11-22   09:27:04   MOD   MOD23   MOD22   MOD2 5  A   21   E145   MOD22  dfsdfs
/*


分享到:
评论

相关推荐

    在SQL Server 2005中使用XML数据.pdf

    在SQL Server 2005中,XML数据的处理能力得到了显著增强,使其成为处理XML文档的强大工具。本文将深入探讨SQL Server 2005中XML数据类型的使用,包括存储、查询、以及相关的增强功能。 首先,XML数据类型是SQL ...

    SQL 解析XML数据示例

    SQL Server 2005及更高版本引入了XML数据类型,它允许直接在数据库中存储XML文档,并提供了内置函数和方法来解析和操作XML数据。`a.xml`文件可能包含如下结构的XML数据: ```xml &lt;name&gt;John Doe &lt;position&gt;...

    SQLServer20052008 XML数据类型操作

    根据给定的文件标题、描述、标签以及部分内容,本文将详细介绍如何在SQL Server 2005 和 2008 中操作XML数据类型,并简要介绍与之相关的C# XML操作方法。 ### 一、SQL Server 2005/2008 XML 数据类型操作 #### 1. ...

    Professional.SQL.Server.2005.XML

    《Professional SQL Server 2005 XML》是...通过深入学习《Professional SQL Server 2005 XML》,读者将能够熟练掌握SQL Server 2005中的XML特性,从而在实际项目中充分利用XML的优势,提升数据库应用的效率和灵活性。

    SQLXML.rar_SQLXML_sql xml_xml 数据库

    SQLXML是微软提供的一种工具,它允许开发人员以XML格式来处理SQL Server中的数据,从而方便地进行数据的导入、导出以及在.NET应用程序中使用XML数据。 描述中提到,“让数据库输出XML”,这指的是SQL Server可以...

    sql-map-2.dtd和sql-map-config-2.dtd

    这样,XML解析器就能够识别并验证配置文件的结构,确保其遵循Ibatis的规范。 总结来说,"sql-map-2.dtd"和"sql-map-config-2.dtd"是Ibatis 2.x版本中非常关键的组件,它们为XML配置文件提供了结构化规则,使得开发...

    SQL Server 2005中XML存取原理剖析.pdf

    这包括XML数据类型在数据库中的表现形式、存储方式以及如何被SQL Server 2005解析和管理。 其次,我们需要研究SQL Server 2005中的ORDPATH编码方案。这种编码方案是专门为了支持XML数据的高效存取而设计的。ORDPATH...

    professional SQL server 2005 xml.pdf

    1. **XML在SQL Server 2005中的角色**:SQL Server 2005引入了对XML的内置支持,允许XML数据作为第一类公民存储在数据库中。这包括XML数据类型、XML索引和支持XML的函数,使得数据库能够直接处理XML格式的数据。 2....

    天气预报 .xml文件解析

    在IT行业中,XML(eXtensible Markup Language)文件是一种常用的数据存储和交换格式,尤其在数据传输和配置文件中非常常见。本项目名为“天气预报 .xml文件解析”,其核心在于利用XML文件来存储天气预报数据,并...

    SQL Server中读取XML文件的简单做法

    在SQL Server中,读取XML文件并对其进行处理是数据库...在SQL Server的后续版本中,如SQL Server 2005及更高版本,处理XML的功能得到了显著增强,例如引入了XML数据类型和更强大的XML方法,使得XML操作更加简便高效。

    Microsoft SQL Server 2005 中的 XML 选项

    比较不同方法,System.Xml适合于需要在.NET环境中灵活操作XML的场景,而SQLXML更适合那些需要高性能、大批量XML数据处理和方案驱动映射的场合。XML数据类型则为数据库中的XML存储提供了原生支持,简化了XML查询和...

    SQL2005与XML

    书中详尽地介绍了如何在SQL Server 2005环境中利用XML进行数据存储、查询以及数据交换,同时也涵盖了如何与其他编程语言如Delphi和Java协同工作的相关内容。以下是对这些知识点的详细阐述: 1. **SQL Server 2005中...

    帮助文档集合(SQL.chm,XML 指南.chm,正则表达式系统教程.CHM)

    XML的灵活性在于可以自定义标签来表示数据,这使得它在不同系统间交换数据时非常有用。XML文档通常包含元素、属性、注释和处理指令等组件。理解XML的语法和解析XML文档是Web开发、数据交换和数据存储等领域的重要...

    mybatis中的sql解析.md

    上篇文章说过,mybatis在执行sql语句的时候,通过id获取configuration中mappedStatements的 MappedStatement对象,每个MappedStatement对象对应着增删改查语句,也就是我们配置文件中增删改查标签配置或是注解@...

    PL/SQL解析、生成XML例子

    首先,让我们理解PL/SQL中的XML解析。在Oracle数据库中,有一个强大的XML处理功能集,包括XMLType数据类型和一系列内置的XML函数。XMLType可以存储XML文档,而函数如XMLExists、XMLCast、XMLQuery和XMLTable则允许...

    SQL Server XML基础指南.pdf

    - **XQuery在SQL Server中的应用**:XQuery是用于查询XML数据的一种语言,SQL Server 2005全面支持XQuery,允许用户对存储在数据库中的XML文档执行复杂的查询,如路径表达式、节点测试等。 #### SQL Server XML文档...

    SQL Server 2005 对Native XML Web 服务的支持

    标题中的“SQL Server 2005 对Native XML Web 服务的支持”指的是一项关键功能,该功能使得SQL Server 2005能够与基于XML的Web服务进行无缝交互。在2005版本中,Microsoft引入了对XML数据类型的强大支持,这不仅允许...

    SQL 数据表转化为XML 文件

    1. **跨平台兼容**:XML是一种开放标准,可以在各种操作系统和编程环境中解析。 2. **数据交换**:XML格式普遍被Web服务和API用于数据交换。 3. **数据备份**:XML文件可以作为数据库的一种备份形式,方便恢复或迁移...

Global site tag (gtag.js) - Google Analytics