在PreparedStatements中使用CURDATE()mysql函數的正確方法是什麼? 表列是DATE類型,表中的插入值必須與1988-07-29類似。PreparedStatement和CURDATE()MySQL函數
ps.setDate(5, ...);
在PreparedStatements中使用CURDATE()mysql函數的正確方法是什麼? 表列是DATE類型,表中的插入值必須與1988-07-29類似。PreparedStatement和CURDATE()MySQL函數
ps.setDate(5, ...);
您可以通過兩種方式來完成這一個是從java
爲 使用java.sql.Date
例如: 使用java.sql.Date
:
java.sql.Date date = java.sql.Date.valueOf("2013-09-04");
如果你想插入當前日期:
ps.setDate(2, new java.sql.Date(System.currentTimeMillis()));
使用java.sql.Timestamp
:
ps.setTimestamp(2, new java.sql.Timestamp(System.currentTimeMillis()));
另一種方法是從SQL
通過數據庫支持操作,如now()
爲MySQL
或current_timestamp()
爲PostgreSQL
等只是看看下面的例子
String sql = "INSERT INTO user (email, creationdate) VALUES (?, now())";//for MySQL
瞭解更多詳情Use this link(我最喜歡的作者之一)。
竭誠爲您服務:)
沒有。你要麼在Java中創建當前日期或CURDATE()
做這樣準備的發言:
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
String fd = f.format(new Date());
Date date = f.parse(fd);
preparedStatement.setTimestamp(index, new Timestamp(date.getTime()));
得很不喜歡
(http://stackoverflow.com/a/7626080/2749470),這可能幫助你 – 2014-12-19 10:05:54
爲什麼不把'CURDATE()你的SQL語句的'調用一部分,刪除它的參數? – 2014-12-19 10:10:16
@BhargavModi應該接受你的答案接受,它的工作 – andy007 2014-12-19 10:25:42