簡體   English   中英

如何將當前日期插入MySQL數據庫使用Java?

[英]How to insert current date into MySQL database use Java?

我想將當前日期和時間插入到定義為datetime類型的列中。

我輸入以下代碼:

java.sql.Date sqlDate = new java.sql.Date(new java.util.Date().getTime());
PrepStmt.setDate(1, sqlDate);

當我檢查數據庫時,我發現日期插入正確,但時間是:00:00:00。 修復是什么?

由於您使用datetime作為列類型,因此需要使用java.sql.Timestamp來存儲日期,並使用PrepareStatement.setTimestamp來插入它。

試試這個: -

java.sql.Timestamp date = new java.sql.Timestamp(new java.util.Date().getTime());
PrepStmt.setTimestamp(1, date);

你使用的是錯誤的方法。 您可以使用PreparedStatement#setTimestamp(int parameterIndex, Timestamp x)代替。

您需要使用的是setTimestamp(int parameterIndex,Timestamp x)方法而不是setDate()方法。

您可以設置時間戳的方法之一如下:

Timestamp timestamp = new Timestamp(new Date().getTime());

然后,您可以將參數設置為:

PrepStmt.setTimestamp(1, timestamp);

聽起來像你需要的

java.sql.Timestamp

您使用java.sql.Date僅用於處理日期而不記錄時間的那個。 或者,如果您只想要時間,則可以使用java.sql.Time

嘗試使用setTimestamp作為

PrepStmt.setTimestamp(1, sqlDate);
java.sql.Timestamp date = new java.sql.Timestamp(new java.util.Date().getTime());
PrepStmt.setTimestamp(1, date);

我用這個解決了..

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM