以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XQuery/XLink/XPointer/ 』  (http://bbs.xml.org.cn/list.asp?boardid=14)
----  [B]求助:[/B]怎么样把XML中的数据放入SQL Server中!  (http://bbs.xml.org.cn/dispbbs.asp?boardid=14&rootid=&id=14702)


--  作者:darren8167
--  发布时间:2/22/2005 3:57:00 PM

--  [B]求助:[/B]怎么样把XML中的数据放入SQL Server中!
怎么样把XML中的数据放入SQL Server中!
谢谢!
--  作者:kipling
--  发布时间:4/5/2005 4:26:00 PM

--  
最自然的想法是使用OPENXML()函数,先简略介绍下OPENXML,看下例,可以在任何打开的查询分析员中运行:

declare @intDoc int
declare @chvXML varchar(8000)
set @chvXML='
 <books>
  <book title="C#" price="12.8" press="W3China.org" author="beginner"/>
  <book title="SQL Server" price="19.8" press="W3China.org" author="Developer"/>
  <book title="BizTalk" price="21.5" press="W3China.org" author="Master"/>
 </books>'

exec sp_xml_preparedocument @intDoc output,@chvXML

Select *
from  openxml(@intDoc,'/books/book',1)
 with(Title varchar(100) '@title',
   prict char(8) '@price',
   press varchar(100) '@press',
   author varchar(50) '@author')

exec sp_xml_removedocument @intDoc

看到上面的 Select * from openxml()了吗,这是一个结果集,你可以把这个行集象你熟知的查询结果插入你的数据库中。

所以根据你的要求,你可以建立一个存储过程,把@chvXML作为一个参数,接受你的XML文本,用OPENXML函数处理。



W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
7,005.859ms