Tabe字段状态自动更新,使用mysql&中的查询检查系统日期爪哇 [英] Tabe field status auto update checking system date using query in mysql & java
本文介绍了Tabe字段状态自动更新,使用mysql&中的查询检查系统日期爪哇的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
表字段状态自动更新Java
table field status auto update when checking with system date and expirydate using query in mysql & java
在我的桌子上
tbl成员:
tbl-member:
id,名称,有效日期,状态是字段.
如何与 TRIGGER
(到期日期,系统日期)
(expirydate,systemdate)
CREATE
TRIGGER autoupdation
trigger_time UPDATE
ON tbl-member FOR EACH ROW
trigger_body
如何为此功能创建trigger_body ...
使用系统日期检查字段到期日期,并自动更新状态字段.
field expirydate check with system date and auto update the status field.
这是用于代码更新的代码使用功能
here is the code use function for check-updation
@Override
public List<Member> FindExpiredMembers() throws ParseException {
List<Member> memberlistforreturn=new ArrayList<>();
List<Member> memberlist=getAllMember();
java.util.Date utilDate=new java.util.Date();
java.sql.Date sqldate=new java.sql.Date(utilDate.getTime());
for(Member i : memberlist){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
java.util.Date exp_Date=sdf.parse(sqldate.toString());
java.util.Date renew_Date=sdf.parse(i.getRenewDate().toString());
if(renew_Date.compareTo(exp_Date)<0){
memberlistforreturn.add(i);
i.setStatus(true);
update(i);
}
}
System.out.println(memberlistforreturn.size());
System.out.println("working...!!!!!!");
return memberlistforreturn;
}
使用此功能,程序运行缓慢
using this function the program run on slow
推荐答案
这应该是您的BEFORE UPDATE
触发器的一部分.
This should be part of your BEFORE UPDATE
trigger.
for each row begin
if new.expirydate < curdate() then
set new.status = 1; -- still active
else set new.status = 0; -- expired
end if;
end;
这篇关于Tabe字段状态自动更新,使用mysql&中的查询检查系统日期爪哇的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文