[英]Oracle - How to write simple PL/SQL procedure
我需要创建一个带有会话的表。 成功通过身份验证的新用户将添加到表中。 每次用户打开页面时,用户都会在此表中签入。 因此,我想使用每分钟运行一次的PL / SQL过程,并删除30分钟之前的会话以刷新“死亡”会话。
或者,也许DELETE FROM "Dates" WHERE "Date" < SYSDATE - 1/48;
执行DELETE FROM "Dates" WHERE "Date" < SYSDATE - 1/48;
每次重新加载页面时,都会有一个更优化的解决方案吗?
delete
from table
where date_column < sysdate - 30/1440;
1天
1/1440是一分钟
30/1440等于30分钟
您不需要执行此操作的过程。 简单的删除查询就足够了。
DELETE FROM "Dates" WHERE "Date" < SYSDATE - 1/48;
如果您需要程序,则应将此查询包装到proc中。
SQL
delete from mytable
where mytable.datefield < sysdate - .02083333333333333333;
commit;
.02083333333333333333是1800/86400,即一天中以秒为单位的30分钟/秒
如果要编写触发器或存储过程,则可以使用PL / SQL。 请详细说明。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.