利用XML转换为table实现在SQL参数中传递表结构
2011-03-07 16:27
435 查看
DECLARE @h INT,
@XML VARCHAR(8000),
@2k5 XML
SELECT @XML = '
<jrt>
<item>
<id>11</id>
<name>CS Tester</name>
<company>EEE</company>
<phone>555-555-1234</phone>
</item>
<item>
<id>22</id>
<name>CS Tester</name>
<company>EEE</company>
<phone>555-555-1234</phone>
</item>
</jrt>
',
@2k5 = @XML
SELECT T.c.query('id').value('.[1]', 'varchar(100)') as id,
T.c.query('name').value('.[1]', 'varchar(50)') as name,
T.c.query('company').value('.[1]', 'varchar(50)') as company,
T.c.query('phone').value('.[1]', 'nvarchar(50)') as phone
FROM @2k5.nodes('/jrt/item') AS T(c)
结果是:
id name company phone
---------- ---------- ---------- ----------
11 CS Tester EEE 555-555-12
22 CS Tester EEE 555-555-12
======================================
单列表
DECLARE @XMLDocument XML
SELECT @XMLDocument='<Root>
<UserFlag>1002</UserFlag>
<UserFlag>1003</UserFlag>
<UserFlag>1005</UserFlag>
</Root>'
select T.c.value('.[1]', 'int') as num
from @XMLDocument.nodes('/Root/UserFlag') as T(c)
@XML VARCHAR(8000),
@2k5 XML
SELECT @XML = '
<jrt>
<item>
<id>11</id>
<name>CS Tester</name>
<company>EEE</company>
<phone>555-555-1234</phone>
</item>
<item>
<id>22</id>
<name>CS Tester</name>
<company>EEE</company>
<phone>555-555-1234</phone>
</item>
</jrt>
',
@2k5 = @XML
SELECT T.c.query('id').value('.[1]', 'varchar(100)') as id,
T.c.query('name').value('.[1]', 'varchar(50)') as name,
T.c.query('company').value('.[1]', 'varchar(50)') as company,
T.c.query('phone').value('.[1]', 'nvarchar(50)') as phone
FROM @2k5.nodes('/jrt/item') AS T(c)
结果是:
id name company phone
---------- ---------- ---------- ----------
11 CS Tester EEE 555-555-12
22 CS Tester EEE 555-555-12
======================================
单列表
DECLARE @XMLDocument XML
SELECT @XMLDocument='<Root>
<UserFlag>1002</UserFlag>
<UserFlag>1003</UserFlag>
<UserFlag>1005</UserFlag>
</Root>'
select T.c.value('.[1]', 'int') as num
from @XMLDocument.nodes('/Root/UserFlag') as T(c)
相关文章推荐
- 利用XML转换为table实现在SQL参数中传递表结构
- test4 利用xml中的语句实现字码转换
- 利用js方法实现html静态页面间参数传递
- Asp.Net 实现线程传递多个参数。。。。。。。。。。。。。(并利用线程动态替代Word内的书签等)
- JavaEE中利用JAXB来实现Java对象和XML文档进行相互转换
- Python 提取dict转换为xml/json/table并输出的实现代码
- ASP.NET+SQL Server利用XML实现动态菜单
- SQL实现递归及存储过程中In()参数传递解决方案详解
- 基于xml配置的spring aop 的实现日志 和为通知传递参数
- Spring MVC中利用注解实现XML和Java对象之间的转换
- 利用XStream实现实体对象和xml文件相互转换
- 利用JAXB实现xml和bean之间的转换(一)
- 传递参数执行sql语句的实现
- Python 提取dict转换为xml/json/table并输出的实现代码
- 利用Excel的vba脚本根据数据库表结构自动生成java的action,bean,dao,mode,service,xml,sql,jsp等
- 利用JAXB实现xml和bean之间的转换(一)
- SQL实现递归及存储过程中In()参数传递解决方案详解
- 利用XStream实现实体类与xml的转换
- 利用 T-sql 的从句 for xml path('') 实现多行合并到一行, 并带有分隔符
- 利用GetType反射方法再调用方法进行传递参数实现调用