gee*_*n92 2 sql oracle triggers plsql
您好我使用sqldeveloper连接到oracle数据库.
我的senario是我的数据库中有一个客户表,start_date
其中包含一个日期字段,该字段包含用户注册日期和调用的"布尔"字段is_member
.每个会员资格仅持续一年,is_member
如果是,则为假SYSDATE > start_date + 1year
.
我想is_member
在用户调用select语句之前检查用户是否仍然是成员(如果没有则更改).这可能吗?
如果没有人有任何关于如何保持该is_member
领域最新的想法?你可以做一个每天调用一次的触发器来查看会员资格是否已经过期?
谢谢你的推荐!=]
不要使用表列来存储依赖数据,使用视图:
CREATE OR REPLACE VIEW customer_v AS
SELECT c.*,
CASE WHEN SYSDATE > add_months(c.start_date, 12)
THEN 'FALSE'
ELSE 'TRUE'
END is_member
FROM customer c
Run Code Online (Sandbox Code Playgroud)
该is_member
视图的列将始终包含了最新的数据.
归档时间: |
|
查看次数: |
10504 次 |
最近记录: |