2017-06-14 19 views
0

我以字符串形式具有以下格式的日期。將字符串格式的日期插入到字段類型爲Date的數據庫中

String from_date = "2016-09-09"; 

我需要使用PreparedStatement插入到具有日期類型字段的數據庫中。我以下面的方式完成了它。

DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); 
Date fd = formatter.parse(from_date); 
select1.setDate(1, fd); 

但它示出了誤差作爲

在類型的PreparedStatement的方法的setDate(int.java.sql.Date)是不適用的參數(INT,java.util.Date )

+0

'select1.setDate(1,新java.sql.Date(fd.getTime()));' –

+0

感謝..它使用的getTime()當工作:) – Leeza

回答

3

在數據庫中插入時,您需要使用java.sql.Date。請嘗試以下操作:

DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); 
Date fd = formatter.parse(from_date); 
java.sql.Date sqlDate = new java.sql.Date(fd.getTime()); 
select1.setDate(1, sqlDate); 
+0

將我得到的日期? – Leeza

+0

您將在'long'中獲得用於創建新'java.sql.Date'的時間。它是爲了將'java.util.Date'形式轉換爲'java.sql.Date'而完成的。 –

+0

我已經編輯過,但感謝您的注意。 –

1

使用java.sql.Date

java.util.Date

假設你有一個java.util.Date類型的變量結束日期,您做出這樣的轉換:

select1.setDate(1, new java.sql.Date(endDate.getTime()); 
相關問題