将单个xml元素插入到sql中,如字符串操作

时间:2013-05-21 10:33:13

标签: asp.net sql xml

嗨,我有一个像这样的XML文件

<pictures>
<mainimg>
<link>http://s.freshnewtracks.com/wp-content/uploads/2012/07/dr_dre_20011.jpeg</link>
</mainimg>
<img>
<title>back</title>
<link>http://s.freshnewtracks.com/wp-content/uploads/2012/07/dr_dre_20011.jpeg</link>
</img>
<web></web>
<twitter></twitter>
<facebook></facebook>
<myspace></myspace>
<about></about>
</pictures>

我需要在不使用磁盘上的XML文件的情况下将此XML插入到SQL数据表中。我已经看到了其他的例子,它通过在磁盘上使用xml文件来完成。我想用类型/字符串XML来做这个而不保存到磁盘/ BULK Link例如

INSERT INTO Table (XMLColumn)
VALUES (XML LIKE STRING)

这可能吗?我可以对每行的XML文件元素进行一些控制吗?

1 个答案:

答案 0 :(得分:1)

将此XML作为字符串传递给存储过程  并在存储过程

中通过@XML XML = null获取此xml字符串

在SP中:

insert into Table(column_name) 
                                      SELECT 
         @Applicationo_new
            ,column_name  = t.p.value('column_name', 'varchar(20)') 
    FROM @XML.nodes('pictures') t(p);