1

我有一张桌子

表架构:

CREATE TABLE CHARGES 
(
    total NUMBER(30),
    admitdate TIMESTAMP(6),
    dischargedate TIMESTAMP(30)
)

触发算法:

if 
{
   dischargedate="null" 
   then total=admitdate-sysdate=difference in days * Total
   Do this every day at 12:00(24 Hr. Format)
}
else
{
    Do Nothing;
}

我的问题是如果系统在上午 12:00 离线怎么办。此问题将不允许触发器运行。

4

2 回答 2

1

要在特定时间运行一段代码,您可以使用jobs。触发器仅用于响应表更改。如果服务器关闭(它几乎不应该),该作业可以在以后运行。

于 2013-01-01T12:28:05.213 回答
0

如果您可以更改方法并仅存储静态值,则维护和推理会更容易。并且仅在需要时才使用 sysdate 进行计算,例如在需要时在 sql 输出中进行计算。

于 2013-01-01T12:58:21.660 回答