我想做一个带生日提醒功能的java程序。
数据库中的表birthday是:
ID mingzi shengri
1 张三 1988-2-1
2 李四 1989-1-3
3 王五 1987-5-20
现要写查询语句,以提醒我们15天内将要生日的人,且按时间先后顺序排序。
我自己写的查询语句构思如下:
获取系统当前时间。
计算15天后的时间(同时考虑到闰年和非闰年的区别)
从数据库中提取生日与15天后的时间比较,如果比后者小,则输出到table中
但是这样涉及到的问题是,系统的当前时间是2010-6-23,而数据库里的时间是198X年的,不管怎样,都 比当前时间小的,所以,怎么去排除年份的影响,就不大明白。
也尝试过用这样的语句:
String sql="SELECT * RROM birthday WHERE "+datadiff(getdate(),shengri)+"<=3 AND "+datediff(getdate(),shengri)+">=0";
ResultSet=excuteQuery(sql);
但是编辑会显示没有datadiff()和getdate()这样的对象。我import 了java.sql.*和java.sql.Date.*都没用~~
请大家帮我看看什么解决办法。
由于本人本身就没多少财富值,所以悬赏也就少了。但还是希望得到大家的帮助,谢谢了!
忘记提到的一点,
这表是用ACCESS做的