【发布时间】:2014-05-05 15:40:09
【问题描述】:
有没有像散列函数那样产生数字作为输出的东西?
基本上 - 我需要在我的 SQL Server 中创建一个确定性的键列(结果是可重复的)并且基于数据库中的 3 列。此列将用作将进入远程系统的那条数据的键(我将使用此键来匹配在外部系统中创建时备份的数据)。
对于类似的事情,我一直在使用 SHA5 哈希算法来创建我的密钥,但是我现在处理的数据必须是数字的。
有什么想法吗? 结果必须是可重复的,因此必须基于输入列。
【问题讨论】:
-
除非三列的排列适合 8 个字节,否则不会
-
CHECKSUM() 返回一个整数,但我不确定它是否足以满足您的目的。
-
为什么需要对这三个关键列进行哈希处理?通常,分布式数据库的解决方案是一个代理键(数字或 GUID)和一个或多个对其他自然键列的唯一约束。冲突解决基于这些独特的约束。
标签: sql sql-server hash sql-server-2012 key