我在我的数据库中记录了一个事务的开始时间,并且我对每个这样的事务都有一个时间限制。我想在超时时发出警报。这是我能想到的两种方法。
1)让数据库自动计算,这样我就可以选择超过限制的记录。
2)从我的脚本中调用函数,给出当前时间,并计算数据库中每个事务的时间,然后选择老化的。
我更喜欢第一个解决方案,但我不知道该怎么做。我正在使用 Postgresql。有人帮我吗?谢谢。
我在我的数据库中记录了一个事务的开始时间,并且我对每个这样的事务都有一个时间限制。我想在超时时发出警报。这是我能想到的两种方法。
1)让数据库自动计算,这样我就可以选择超过限制的记录。
2)从我的脚本中调用函数,给出当前时间,并计算数据库中每个事务的时间,然后选择老化的。
我更喜欢第一个解决方案,但我不知道该怎么做。我正在使用 Postgresql。有人帮我吗?谢谢。
在 Postgres 中,您可以对时间值使用算术运算符。见这里: http ://www.postgresql.org/docs/8.0/static/functions-datetime.html
您还可以创建一个“interval”类型的字面值,它表示开始时间和持续时间(或开始和停止时间,取决于您更喜欢如何看待它)。
因此,您可以执行以下操作(尚未测试):
SELECT * FROM some_table
WHERE timestamp_column - interval '1 hour' <= 0;