【问题标题】:varbinary and FOR XML clausevarbinary 和 FOR XML 子句
【发布时间】:2012-05-23 07:40:42
【问题描述】:

如何将 COLUMNS_UPDATED() 返回的值存储在 xml 消息中?我想稍后将其返回到 varbinary(max) 变量并执行一些操作。

【问题讨论】:

  • 以下代码有效:SET @COLUMNS_UPDATED = @xmlmessage.value('xs:base64Binary((/ColumnsUpdated)[1])', 'varbinary(max)')。如果我没有指定类型 (xs:base64Binary) 它返回 0x0

标签: sql-server xml tsql varbinary


【解决方案1】:

将 varbinary 值添加到 XML 类型中将其存储为 base64 编码,并且提取该值已经知道如何对其进行解码:

declare @v varbinary(1000) = 0x0102030405;
declare @x xml;
set @x = (select @v as value for xml path ('message'), type);
select @x, @x.value(N'(/message/value)[1]', N'varbinary(1000)');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-15
    • 1970-01-01
    • 2021-08-04
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多