13

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

4

2 回答 2

16

根据MSDN 上的文档和我的经验,二进制更好,因为 md5 散列的大小没有变化。

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

于 2008-09-08T04:56:17.287 回答
2

空值改变了事情:

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

https://stackoverflow.com/a/3731195

于 2018-03-01T20:08:52.810 回答