【发布时间】:2013-02-21 01:05:51
【问题描述】:
每次用户登录时我都会保存日期日志。日期日志会在记录中保存一个日期,但我想要的是没有重复。它将检查记录是否已经存在,如果是 它不会保存日期。如果记录尚不存在,它将保存日期。
这是我的代码:
SimpleDateFormat dnow2 = new SimpleDateFormat("MMMMM dd, yyyy");
ResultSet ds = MyDB.rsFetch("SELECT * FROM `date-logs` WHERE `Date` = '"+dnow.format(new java.util.Date())+"'");
try {
ds.next() ;
if (ds.getMetaData().getColumnCount() == 0) {
MyDB.exSQL( "INSERT INTO `date-logs` (`Date Code`, `Date`) "
+ "VALUES ('"+dnow.format(new java.util.Date())+ "',"
+ "'"+dnow2.format(new java.util.Date())+"')");
}
} catch (SQLException ex) {
Logger.getLogger(FrmLogIn.class.getName()).log(Level.SEVERE, null, ex);
}
【问题讨论】:
-
那么你的问题是什么?
-
如果数据库中存在现有记录,它将不再保存。它将保存的新记录。当我运行它时,什么也没有发生,你能帮我吗
-
您是否检查过您的 SELECT 查询是否正常工作,即它是否实际返回任何结果。看起来您正在将日期格式化为“MMMMM dd, yyyy”,其计算结果为“2013 年 2 月 21 日”。您能否检查查询 SELECT * FROM
date-logsWHEREDate= 'February 21, 2013' 是否正在检索任何结果。 -
是的,它工作正常
-
如果记录已经存在,我只想发生这种情况,如果记录已经存在,它将不再保存,如果新记录将保存