在SQL Server中存储MD5哈希

问题描述 投票:12回答:2

在SQL Server中,varbinary(16)是存储MD5哈希的最有效方式吗?除了在linq查询中返回它之外,不会对它做任何事情。

sql-server md5
2个回答
16
投票

根据documentation on MSDN和我的经验,二进制文件更好,因为md5哈希的大小不变。

二进制数据类型的大小是n个字节,因此是数据的大小。 varbinary数据类型的大小是n个字节+ 2个字节,位于数据大小之上。


0
投票

空值改变了一些事情:

null varbinary(16)是2个字节。 空二进制(16)是16个字节。 存储在varbinary(16)中的16个字节占用18个字节。 二进制(16)中的16个字节占用16个字节。

https://stackoverflow.com/a/3731195

© www.soinside.com 2019 - 2024. All rights reserved.