创建整个数据库行的MD5哈希值以用作键?

时间:2015-06-08 12:26:54

标签: php mysql database hash

我有一个外部数据库,我需要在内部复制。数据库由不合作的供应商托管。所以我几乎无法控制它。我有能力编写报告报告,我通过API调用它,以便在将数据移动到本地Oracle数据库时将数据降低。但是,有几个表没有唯一的字段,我无法添加一个字段,事实上,经过一些调查后,获得一个唯一字段的唯一方法是连接整个行,这对于明显是不可取的。原因。但是,我可以在报告中执行PHP脚本作为其调用,因此我的想法是创建整个行的MD5哈希并将其存储在表的开头作为键。

我意识到碰撞可能会发生,但它们应该非常罕见。考虑到没有密钥的缺陷,我宁愿每隔几百万行丢失一条记录,而不是有数千条重复记录,如果我们需要重排数据库的话。我应该担心这种方法还有其他任何陷阱吗?我试图充分利用糟糕的情况,我意识到这不是一个完美的解决方案。我只是想确保给老板提供关于这个陷阱的最佳信息,这样我们就不会感到惊讶了。是的,供应商被淘汰了,这就是我们为什么要复制数据库的原因。

0 个答案:

没有答案