SQL Server:字符串还是二进制?

Bra*_*ram 5 sql-server

我有大量记录要存储在 SQL Server 2008 数据库中。每条记录都有一个 SHA-1 哈希值。显然,以字符串形式存储 SHA 将占用 80 个字节,而如果存储为字节则为 20 个字节。

查询数据库时,SQL 更擅长:

  1. 比较字符串?
  2. 比较二进制?

我需要帮助决定如何存储散列,因为它对数据库有巨大的存储影响。谢谢你的帮助。

Mar*_*tos 3

使用BINARY(20)。不存在性能问题(如果有的话,它应该更快)。这些值有一些小不便,例如需要在 C# 中使用而byte[]不是string