And*_*res 3 xml t-sql sql-server
我在我的数据库中有一个表,其中一列存储XML数据.由于源代码的更改,我们希望重命名一个特定的XML节点名称和XML命名空间.让我们说我有以下XML:
<MediaClass xmlns="MediaClass/1">
<Media>
<Title>Test</Title>
<Type>Book</Type>
<Price>1.00</Price>
</Media>
</MediaClass>
Run Code Online (Sandbox Code Playgroud)
如何重命名Node MediaClass名称让我们说Book并更改名称空间值?
所以它看起来像:
<Book xmlns="Book/1">
<Media>
<Title>Test</Title>
<Type>Book</Type>
<Price>1.00</Price>
</Media>
</Book>
Run Code Online (Sandbox Code Playgroud)
我需要完全在T-SQL中完成它,因为它将用作迁移脚本.我们客户安装的最小SQL Server是SQL Server 2005.
我不知道XML DML是否可行
它可能适合您使用替换.
update YourTable set
XMLCol = replace(replace(cast(XMLCol as nvarchar(max)),
'<MediaClass xmlns="MediaClass/1">',
'<Book xmlns="Book/1">'),
'</MediaClass>',
'</Book>')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5948 次 |
| 最近记录: |