【发布时间】:2020-07-26 23:53:38
【问题描述】:
我需要在每个午夜自动重置 DB2 序列。我已经尝试使用示例 1(https://www.ibm.com/support/knowledgecenter/en/SSEPGG_11.1.0/com.ibm.db2.luw.sql.rtn.doc/doc/r0054371.html)中找到的示例执行管理任务。即使这已执行并显示在 systools.admin_task_list 中,它也没有重置序列在午夜。 systools.admin_task_status 中没有项目。如何获取与管理任务相关的错误?
有没有更简单的方法可以每天重置 DB2 序列?
CALL SYSPROC.ADMIN_TASK_ADD
('Reset_sales1_seq',
CURRENT_TIMESTAMP,
NULL,
NULL,
'0 0 * * *',
'SYSPROC',
'ADMIN_CMD',
'VALUES("ALTER SEQUENCE Sample.sales1_seq RESTART WITH 1")',
NULL,
NULL )
【问题讨论】:
-
... 请注意,这种事情会阻止您进行 24 小时全天候销售,因为转换点附近的交易可能会导致日期和序列号不匹配(可能导致重复- 无论如何,您最终都会在序列中出现漏洞)。您要么需要切换到在“工作日”(通常不是严格的服务器时间)键入的表格版本,要么切换到不需要严格顺序的 GUID/UUID。
标签: db2 sequence reset schedule