首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

如何把XML数据存入数据库

2013-09-14 
怎么把XML数据存入数据库程序前台传过来一个XML的字符串。我现在存储过程里,要用拼接sql语句的方式,把这个x

怎么把XML数据存入数据库
程序前台传过来一个XML的字符串。
我现在存储过程里,要用拼接sql语句的方式,把这个xml数据存入数据库表的某个varchar字段里面。该怎么做?

类似的过程如下


create procedure test 
@XML  varchar(max) ,
@xx varchar(20),
……,
……
as
Declare @sql varchar(max)
set @sql='insert into tb(XX,……,xmls)
select '''+@xx+''','''+……+……''',''','''+@XML+''''
exec(@sq) 



如果这样做的话,由于XML里面可能含有‘,等符号,会导致@sql出错。
如果用把特殊符号转换掉的话,那么如果要转换的地方很多的话,会影响性能

有没有什么好的办法?


[解决办法]


DECLARE @TMPXML VARCHAR(MAX)
SET @TMPXML =replace(@XML,'''','tszf') 

拼接的时候,用@TMPXML 代替@XML。就是单引号出问题。其他的不会。
之后再执行:


UODATE TB SET XML=REPLACE (XML,'tszf','''')

 

热点排行