我需要使用Statement.executeUpdate()
将数据插入数据库。
因此,每个参数都必须嵌入到SQL字符串中。
在Database中,两列的类型是datetime:Date1和Date2
在客户端,如果我使用以下声明:
String SQLString = "INSERT INTO Position (" +
......
"Date1, " +
......
"Date2) " +
"VALUES(" +
......
//"2012-05-29 16:28:58.555" + ", " + // runtime error, always say error at 16
//"2012-05-29" + ", " + // no runtime error, but lost time and result date is also not correct
//"10-06-02" + ", " + // no runtime error, but it adds 2 days beginning at 1900-01-01 00:00:00.000
......
null
")";
有人能告诉我如何将Datetime正确嵌入到SQL String中吗?
答案 0 :(得分:4)
您应该使用PreparedStatement并传递日期字段ad Date ...
String SQLString = "INSERT INTO Position (Date1) VALUES (?)";
PreparedStatement prest = con.prepareStatement(SQLString);
prest.setDate(1,new Date());
prest.executeUpdate()
答案 1 :(得分:2)
首先,您必须使用PreparedStatement
。然后你可以做类似的事情:
statement.setDate(2, new Date());