在T-SQL中,如何在XML字符串的属性中转义双引号?

非常简单的问题-我有一个属性,我想在其中加上双引号。我怎样才能逃脱他们?我试过了

  • \”
  • “”
  • \\”

我为所有这些变量都创建了@xml变量xml type和varchar(max)

[email protected](或varchar(max)尝试了两者)
设置@xml=”<交易&gt&书信电报;项目值=“嗨”妈妈“lol”
ItemId=“106”ItemType=“2”instanceId=“215923801”dataSetId=“1”/&gt&lt/交易>'
声明@xh int
exec [email protected] OUTPUT,@xml
insert [email protected]——我声明了表,只是为了简洁起见删除了它
选择
十,*
来自openxml(@xh,“/transaction/item”)
与(
dataItemId int,
数据项类型int,
instanceId int,
dataSetId int,
varchar值(最大值)
)x

那不是&引用在xml中?i、 e

“嗨”妈妈“哈哈”

**编辑:**已测试;工作正常:

声明@xml
设置@xml=”<交易&gt&书信电报;item value=“嗨”妈妈“笑”
ItemId=“106”ItemType=“2”instanceId=“215923801”dataSetId=“1”/&gt&lt/交易>'
选择@xml.value('(//item/@value)[1]','varchar(50)'

发表评论