SAP HANA XSA SPS 3:序列行为(hdbsequence)

2020-08-30 19:03发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我们对序列(.hdb...

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

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


专家们,

我们对序列(.hdbsequence)的行为感到有些惊讶。

如果我们首先通过sql插入更高的ID(5),我们试图找出序列的工作方式。 我们认为自动增量将在5点后开始,但事实并非如此。 它从1开始。

序列" TBASE.db.sequences :: A_DialyseID"
 通过选择IFNULL(MAX(" DialyseID"),0)+1从" TBASE.db.data::tbase.cds.md.A_Dialyse"重置

此后,我们尝试找出序列到ID 5时的计数方式,并意识到序列运行出错并停止了自动递增。

要解决此问题,我们想使用"最小值"和"最大值",但在某些情况下,它不适用于我们。 不知道是什么原因。 (即使我们删除了它,也可能与.hdbtabledata工件有关。)

有人可以确认db modul的构建应该可以自动处理Reset_By语句吗?

序列" TBASE.db.sequences :: A_DialyseID"以1000000000 MAXVALUE开始1999999999
 通过选择IFNULL(MAX(" DialyseID"),1000000000)+1从" TBASE.db.data::tbase.cds.md.A_Dialyse"重置

感谢您的帮助!

(7.6 kB)
8条回答
compass1988
2020-08-30 19:58

Reset_by仅在重新启动db时考虑,而在"仅"构建db模块时不考虑。 您要么必须删除并重新创建序列(具有已调整的)起始值,要么使用 ALTER SEQUENCE 语句带有" RESTART WITH"选项(当然,为此,您必须将DB Explorer连接到相应的HDI容器并执行命令)。

关于,
弗洛里安

一周热门 更多>