我想通过搜索日期在我的name
表中搜索名为work
的列。其他列为id(primary key) and mydate
。我找不到我的代码有什么问题。我正在使用jdbc类进行数据库连接。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String date1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(jDateChooser1.getDate());
String time1 = dateSpinner1.getValue().toString().split(" ")[3];
date1 = date1 + " " + time1;
try {
ResultSet rs =db.getData("SELECT * FROM work WHERE mydate = '"+date1+"'");
while (rs.next()) {
String name = rs.getString("name");
System.out.println(name);
}
} catch (Exception e) {
e.printStackTrace();
}
}
答案 0 :(得分:0)
date
是MySQL中函数的名称。你需要将它包装在`characters:
ResultSet rs =db.getData("SELECT * FROM work WHERE `date` = '"+date1+"'");
答案 1 :(得分:0)
一个可能的错误可能是数据库小时分钟和秒不是0:0:0而且从datechooser得到这些字段为0:0
答案 2 :(得分:0)
你能否在日期中将date1作为日期传递(作为参数)?
"SELECT * FROM work WHERE date = ?" and pass parameter as date