小编use*_*894的帖子

使用 SQL 查询替换 Xml 列中的属性名称

我需要在以下 XML 示例中将属性名称“TimeStamp”替换为“Timestamp”:

<CMD CommandID="6000">
   <DATA>
      <ReportData Key="10000">
         <Event TimeStamp="2013-03-07 15:42:49.000" Name="ABC" />
         <Event TimeStamp="2013-03-07 15:42:50.000" Name="DEF" />
         <Event TimeStamp="2013-03-07 16:22:03.000" Name="GHI" />
      <ReportData>
   <DATA>
<CMD>
Run Code Online (Sandbox Code Playgroud)

它存储在 SQL Server 2008 数据库中的一个XML类型列中。

我尝试过类似的方法,但这是不正确的:

DECLARE @variable NVARCHAR(20) = 'Timestamp'

UPDATE MyDatabase.dbo.MyTable
SET MyXmlColumn.modify('replace value of (/CMD/DATA/ReportData/Event/@TimeStamp) with sql:variable("@variable") ')
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助。

xml sql-server-2008

2
推荐指数
1
解决办法
1212
查看次数

标签 统计

sql-server-2008 ×1

xml ×1