2

尝试在 sql 中将记录转换为 xml 时,我收到以下错误消息:

消息 6841,级别 16,状态 1,过程 trg_missacct_upd_del,第 58 行
FOR XML 无法序列化节点“AltAddr”的数据,因为它包含 XML 中不允许的字符 (0x0002)。要使用 FOR XML 检索此数据,请将其转换为二进制、varbinary 或图像数据类型并使用 BINARY BASE64 指令。

我想写一个查询来查找哪条记录有这个十六进制值(0x0002)。我试过这样的事情:

select * from missacct where altaddr like '%' + 0x0002 + '%'

有没有办法查询出这条记录?

4

1 回答 1

4
SELECT * FROM missacct WHERE altaddr LIKE '%' + CHAR(0x0002) + '%'

或者你可以做

SELECT * FROM missacct WHERE CHARINDEX( CHAR(0x0002), altaddr ) >0
于 2012-10-24T14:12:05.880 回答