相关疑难解决方法(0)

在SQL Server中更新空XML标记

我正在尝试在sql server上更新我的Xml字符串中的空XML标记; 它表示当我运行以下脚本时更新行,但是当我查看XML时; 什么也没有变:

Declare @newValue varchar(100)
select @newValue = '01'

    update dbo.UploadReport
    set XmlTest.insert('replace value of (/CodeFiveReport/Owner/AgencyID/text())[1] with sql:variable("@newValue")') 
    where id = 'myId'
Run Code Online (Sandbox Code Playgroud)

在数据库中仍然显示为xml

<AgencyID />

我究竟做错了什么?

我在最后没有文本()的情况下尝试了@AgencyID,仍然无济于事......

xml sql

8
推荐指数
3
解决办法
1万
查看次数

在T-SQL中更新没有文本的XML字段

我在更新SQL字段时遇到了一个问题,因为我编写的内容对于存在文本的xml节点非常有效,但是当节点为空时它会跳闸.

<filemeta filetype="Video">
  <heading>TEST</heading>
  <description />
</filemeta>
Run Code Online (Sandbox Code Playgroud)

这段代码工作正常;

UPDATE filemetaDB SET filemeta.modify('replace value of (/filemeta/heading/text())[1] with "TEST"');
Run Code Online (Sandbox Code Playgroud)

然而这打破了;

UPDATE filemetaDB SET filemeta.modify('replace value of (/filemeta/description/text())[1] with "notworking!"');
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助.

t-sql sql-server-2008 xquery-sql

4
推荐指数
1
解决办法
5278
查看次数

标签 统计

sql ×1

sql-server-2008 ×1

t-sql ×1

xml ×1

xquery-sql ×1