提醒用户其记录已过期,因为它们的记录已过期?

时间:2018-11-14 21:19:48

标签: oracle time oracle12c data-integrity data-entry

我在Oracle数据库中有一个construction_events表。用户通过GIS software在表中输入施工事件

例如,用户可以为2019输入建设项目。  event_status将输入为proposed

以合法身份开始:

记录在输入时为合法。用户为2019年提出一个合理的项目。

已过时:

但是,随着时间的流逝,我们会说... 2020年,从逻辑上讲,2019年的项目应该更改为completedeferredcancelled等。

不幸的是,这种情况很少发生。用户经常无法更改事件的状态(尽管我提醒他们进行检查)。这样会生成记录,记录年份是过去(2019)年,但是状态表明该事件是针对未来(建议)的。从逻辑上讲,不可能(一个事件不能过去-并且-将来不能同时出现)。所以,我们有一个问题。

问题:

通常,在数据库中,我们可以防止首先输入错误的数据(检查约束,无null,触发器等)。但是,在这种情况下,记录实际上在输入时是正确的,因此上述质量控制措施不适用。

如何处理这种情况,以便在用户记录过期时提醒他们其记录已过期?


注意:我不是I.T.家伙或开发人员。我只是一个公共工程数据分析师。这似乎是一个愚蠢的问题,答案很明显,所以请随时提供负面反馈。

0 个答案:

没有答案