我想获取二进制值的十六进制值,从中删除 0x
I want to get hexadecimal value off a binary value removing 0x from it
我在 SQL 服务器中有一个包含 SHA1 代码的二进制值,例如:
0xC06DCADF544BC3D6ECE7C64F485D2846E7A93F55
我想从中删除 0x
。
当我计算字符串的 SHA1 时,输出以 0x
开头,我把它放在一个二进制变量中。从中删除 0x
后,我想将它存储在一个列中。
如果存储二进制值的列的数据类型是 BINARY
或 VARBINARY
,则不能删除前导 0x
,因为那样的话值将是刺痛,不再是二元的。 0x
不是值的一部分,它表示该值是二进制而非字符串。
如果插入的字段的数据类型是字符串类型(CHAR
/ VARCHAR
/ NCHAR
/ NVARCHAR
)那么你可以转换二进制值使用 CONVERT
函数转换为字符串,同时指定 "style" of 2
:
SELECT CONVERT(VARCHAR(50), 0xC06DCADF544BC3D6ECE7C64F485D2846E7A93F55, 2)
-- C06DCADF544BC3D6ECE7C64F485D2846E7A93F55
我在 SQL 服务器中有一个包含 SHA1 代码的二进制值,例如:
0xC06DCADF544BC3D6ECE7C64F485D2846E7A93F55
我想从中删除 0x
。
当我计算字符串的 SHA1 时,输出以 0x
开头,我把它放在一个二进制变量中。从中删除 0x
后,我想将它存储在一个列中。
如果存储二进制值的列的数据类型是 BINARY
或 VARBINARY
,则不能删除前导 0x
,因为那样的话值将是刺痛,不再是二元的。 0x
不是值的一部分,它表示该值是二进制而非字符串。
如果插入的字段的数据类型是字符串类型(CHAR
/ VARCHAR
/ NCHAR
/ NVARCHAR
)那么你可以转换二进制值使用 CONVERT
函数转换为字符串,同时指定 "style" of 2
:
SELECT CONVERT(VARCHAR(50), 0xC06DCADF544BC3D6ECE7C64F485D2846E7A93F55, 2)
-- C06DCADF544BC3D6ECE7C64F485D2846E7A93F55