我有一个REPORTS表。
每次验证报告时,我都会使用触发器使用序列更新表REPORT_SERIAL_NUMBER:
CREATE SEQUENCE "SSM_ANDROID"."REPORTS_SERIAL_NUMBER_SEQ" MINVALUE 1 MAXVALUE 99999999999999999999 INCREMENT BY 1 START WITH 1 NOCACHE NOORDER NOCYCLE ;
每年一次,在第一个得到验证的报告中,我必须将序列重置为1.
我可以在每年1月1日运行的服务器上使用cronjob。但是,该服务器的功能是什么呢?我知道,我有点悲观。
我可以这样做的另一种方法是每次检查上一次报告的日期,如果不是与SYSDATE同一年,则重置序列。但是,关于性能,并不是那么适合。
可以自动从数据库中完成吗?
提前感谢您的时间。
答案 0 :(得分:1)
您可以使用Oracle Scheduler计划数据库作业
http://docs.oracle.com/cd/E11882_01/server.112/e25494/scheduse.htm#ADMIN034