0

我有以下 SQL 插入语句。

insert into [dbo].[Lookup] (XMLField)
        select          
            '<root>' +          
            '<SQL>' + SQLQueryToEscape + '</SQL>' +         
            '</root>' as CustomData         
        from dbo.CustomView 

我的困境是 SQLQueryToEscape 中的字符不是 XML 安全的。我需要转义字符串。在 tSQL 中执行此操作的最佳方法是什么?

4

1 回答 1

3

使用 FOR XML 生成正确的 XML 而不是连接字符串!

insert into [dbo].[Lookup] (XMLField)
select SQLQueryToEscape
from dbo.CustomView 
for xml path ('SQL'), root('root')
于 2012-09-20T22:34:40.893 回答