我需要将VarBinary值转换为String值,并希望得到与VarBinary相同的值。请见下文:
DECLARE @RFID INT
SET @RFID = 1292202724
SELECT CONVERT(VARBINARY(8), @RFID) AS 'VARBINARY_VALUE'
SELECT CAST((CONVERT(VARBINARY(8), @RFID)) AS NVARCHAR) AS 'STRING_VALUE' --Using Cast
SELECT CONVERT(NVARCHAR(15),(CONVERT(VARBINARY(8), @RFID))) AS 'STRING_VALUE' --Using Convert结果如下:

我想要的是字符串值应该得到与值相同的值“0x4D0572E4”。但是正如你所看到的,我不能转换成字符串。
如果你有解决办法,请告诉我。
发布于 2020-06-01 03:34:47
当您查看官方文件 for convert时,您会发现对于二进制数据有一个样式选项0、1、2,样式选项1给出了十六进制格式的值。
DECLARE @RFID INT = 1292202724;
SELECT CONVERT(VARBINARY(8), @RFID) AS 'VARBINARY_VALUE';
SELECT CONVERT(NVARCHAR(15), CONVERT(VARBINARY(8), @RFID), 1 /* style 1 */) AS 'STRING_VALUE'; --Using Converthttps://stackoverflow.com/questions/62125289
复制相似问题