2013-06-20 60 views
1

我試圖將任何給定的日期爲我準備好的聲明在這個格式(例如1989年11月8日,1955年4月15日)設置一個特定的日期到事先準備好的聲明

繼承人我的代碼:

pstmnt = conn.prepareStatement("INSERT INTO user_info VALUES (?,?,?,?,?,?)"); 

pstmnt.setInt(1, max_id); 
      pstmnt.setString(2, f_name); 
      pstmnt.setString(3, l_name); 
      pstmnt.setString(4, email); 
      pstmnt.setString(5, username); 
      pstmnt.setDate(6, ?); 
      pstmnt.addBatch(); 

我不知道如何實現這一點,因爲大量的Date方法已被棄用。

任何想法?

回答

2

您需要將java.sql.Date對象傳遞給setDate()方法。

pstmt.setDate(6, 
      new java.sql.Date((new 
       SimpleDateFormat("MM/dd/yyyy").parse("11/08/1989")).getTime())); 
+0

IDE告訴我,這是不能完成的 – user2297666

+0

掛上我認爲這是我的錯誤,我會在幾分鐘內回覆你 – user2297666

+0

它的工作!你是一個天才 – user2297666

0

使用SimpleDateFormat

pstmt.setDate(6, new java.sql.Date(
    new SimpleDateFormat("MM/dd/yyyy").parse("11/08/1989"))); 
+0

這不起作用 – user2297666

+0

編譯器給出了錯誤「不兼容的類型:java.util.Date不能轉換爲java.sql.Date」 – CocoNess

+0

哎呀,固定它。 –

相關問題