更新 T-SQL 中的 XML 列
Update XML column in T-SQL
我想替换存储在 SQL 服务器数据库 table.
的 xml
列中的 xslt 文件的一部分
我尝试使用如下语法更新整个列值
UPDATE myTable
SET myColumn = '<user>
<user_id>1</user_id>
<fname>Josef</fname>
<lname>Brown</lname>
<email_>jo0@adventure-works.com</email_>
</user>'
WHERE id = 1
但是由于它到处都是单引号和双引号,所以它不起作用(SQL 查询解析本身失败)。
在 T-SQL 中是否有等效的 C# 逐字字符串?
如果是,那就太简单了,否则,
我可能必须搜索我的特定元素,如下所示
<div class="someClass">
<div class="someOtherClass">
<xsl:if test="SomeElement/ChildElement='NULL'">
并将其替换为
<div class="someClass">
<div class="someOtherClass">
<xsl:if test="SomeElement/ChildElement=''">
基本上,只需将 xsl:if 元素中的 NULL 替换为空字符串即可
我该怎么做?任何帮助表示赞赏。
我在 xml 值中发现并用两个单引号替换了所有出现的一个单引号 - 这样我的 sql 就可以很好地解析,然后使用此语法更新行。
UPDATE myTable
SET myColumn = '<user>
<user_id>1</user_id>
<fname>Caroline</fname>
<lname>O''Connor</lname>
<email_>jo0@adventure-works.com</email_>
</user>'
WHERE id = 1
我想替换存储在 SQL 服务器数据库 table.
的xml
列中的 xslt 文件的一部分
我尝试使用如下语法更新整个列值
UPDATE myTable
SET myColumn = '<user>
<user_id>1</user_id>
<fname>Josef</fname>
<lname>Brown</lname>
<email_>jo0@adventure-works.com</email_>
</user>'
WHERE id = 1
但是由于它到处都是单引号和双引号,所以它不起作用(SQL 查询解析本身失败)。
在 T-SQL 中是否有等效的 C# 逐字字符串?
如果是,那就太简单了,否则,
我可能必须搜索我的特定元素,如下所示
<div class="someClass">
<div class="someOtherClass">
<xsl:if test="SomeElement/ChildElement='NULL'">
并将其替换为
<div class="someClass">
<div class="someOtherClass">
<xsl:if test="SomeElement/ChildElement=''">
基本上,只需将 xsl:if 元素中的 NULL 替换为空字符串即可
我该怎么做?任何帮助表示赞赏。
我在 xml 值中发现并用两个单引号替换了所有出现的一个单引号 - 这样我的 sql 就可以很好地解析,然后使用此语法更新行。
UPDATE myTable
SET myColumn = '<user>
<user_id>1</user_id>
<fname>Caroline</fname>
<lname>O''Connor</lname>
<email_>jo0@adventure-works.com</email_>
</user>'
WHERE id = 1