用于SQL查询的校验和算法?

时间:2012-11-21 10:13:28

标签: algorithm md5 sha crc32

我需要根据SQL查询以及该查询中使用的任何参数的字符串值生成校验和。校验和用于缓存方案。如果校验和存在于缓存中,结果也是如此,那么我不需要点击DB。

要求1: 两个不同的查询不会生成相同的哈希值很重要。因为这可能导致返回意外结果。

要求2: 它不会非常缓慢,但它又在记忆中并且不应该有太多的内容。

根据上下文,哪种算法最适合? CRC32,MD5,SHA1还是其他什么?

//丹尼尔

1 个答案:

答案 0 :(得分:0)

将整个查询字符串与常规HashTable / Dictionary / HashMap中的参数连接,或者用您的语言调用它。将SQL查询作为键,将结果作为值。

您的HashTable将为您的字符串使用适当的散列函数并解决任何散列冲突。