SAP IQ 16 ROWID分配

2020-09-20 09:05发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我正在执行从IQ ...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在执行从IQ 15.4到IQ 16.1 sp02 pl04的数据迁移。

在我的IQ 15表中,ROWID是完全顺序的,即行计数与max(rowid)始终匹配。

将数据迁移到我的IQ 16.1表时,即使两个系统上的行数都匹配,ROWID也不会连续,并且行数与max(rowid)不匹配。 此外,当行数超过一定数量时,IQ 16.1中的行标识符分配总是存在巨大的缺口-为什么会发生这种情况?

为什么上述IQ引擎之间的行为差​​异对我们很重要? 使用哈希md5函数(在IQ 15表和IQ 16表之间)执行数据验证比较时,我得到的校验和值不匹配。 这是因为IQ 16表上的ROWID包含巨大的空白,并且由于为行分配了不同的rowid,这些行值的顺序已更改,因此(有序与无序)值列表上的校验和很明显 不匹配。

我可以了解内部rowid是否不同,但这会影响IQ 16表中行的顺序,其中没有主键或已定义的顺序,因此我不能依靠md5哈希函数来验证数据 比较目的。

任何帮助或想法,将不胜感激。

此致

Asif。

4条回答
My梦
2020-09-20 10:05

OK-因此,在IQ 16的LOAD TABLE语句中使用LIMIT子句会导致引擎以相同顺序加载行并防止ROWID中出现间隙 。

此致

Asif。

一周热门 更多>