我做了不少谷歌搜索,但不幸的是,我找不到我的问题的明确答案。
请参阅以下简单查询;
DECLARE @Bin binary(3) = 754645
Select @Bin
即使变量类型是二进制,它也会以十六进制值的形式吐出。我只是想知道为什么。
我的想法是,它可能是根据SQL Server存储数据的方式从空间中节省的。请让我知道你的想法。
感谢。
答案 0 :(得分:2)
十六进制只是表示二进制数据的简单方法。因此SQL Server只是将其打印为十六进制以便于您使用,但它仍然存储为二进制文件。
答案 1 :(得分:1)
您的select语句将原始二进制数据返回到您用于连接SQL Server的任何客户端。客户端决定以十六进制显示二进制数据。