从SQL参数访问值以将其用于XML属性

时间:2014-03-10 16:14:21

标签: sql sql-server xml

我正在尝试使用属性的参数值来构建xml。

Declare @price int =100

Declare @xml xml = '<Product DiscountPrice= "{sql:variable("@price")}"   />'

Select @xml

我收到以下错误。

  

Msg 9410,Level 16,State 1,
  XML解析:预期的空白'

我在这里缺少什么?

1 个答案:

答案 0 :(得分:2)

我相信sql:variable仅在.query()次来电中使用。这是您使用变量创建xml片段的方法:

Declare @price int =100
declare @xml xml;

set @xml = (select [@DiscountPrice] = @price for xml path('Product'));

Select @xml