我在不同的数据库类型(microsoft sql2005、mysql和ibm informix、oracle)上有相同的数据表,我需要在表中的数据上生成一个sha-1散列结果,在不同的数据库类型上是相同的。
我正在努力确定实现这一目标的最佳方式,到目前为止,这就是我所想到的:
使用.net sqldataadapter,从所需的表中选择*进入
数据表。
通过list.sort()对列名排序以确保一致
数据库类型之间的排序
对于每一行,执行如下哈希:

上面确定的顺序
散列整个行字符串以获取行哈希并将其添加到列表中。
接下来,根据sha-1值对所有rowhash值进行排序,并将
结果获取最终表哈希。这应该处理好
不同行之间按不同顺序返回的问题
数据库类型。
我会在这个实现中遇到任何问题吗?例如来自不同数据库的数据类型会导致不同的字符串结果?
还有,分类有必要吗?我假设除非在查询中定义列和行的顺序,否则不能保证列和行的顺序,我希望这尽可能是动态的。
谢谢。

最佳答案

注意数值,特别是舍入和精度。

10-02 05:12
查看更多