2012-09-03 31 views
0

可能重複:
TSQL: datetime from character string error如何將字符串轉換爲SQL查詢中的日期時間?

我無法字符串轉換爲日期時間。我使用SQL Server 2005的

String frmDate="03/09/2012"; 
String toDate="04/09/2012"; 

SimpleDateFormat formater = new SimpleDateFormat("dd/MM/yyyy"); 
Date frmDate1 = formater.parse(frmDate); 
Date toDate1=formater.parse(toDate); 


String query3="select * from dbo.Monthly_PFSPL " + 
    "where Convert (datetime,Added_Date,103) " + 
"between '"+frmDate1+"' and '"+toDate1+"' "; 
     rsobj1=stat2.executeQuery(query3); 

我得到這個異常:

java.sql.SQLException: Conversion failed when converting datetime from character string 
+0

什麼數據類型是'Added_Date'? –

+0

Added_Date是字符串。 –

+0

您應該將其更改爲'datetime'並使用日期參數,而不是在代碼中生成查詢。 –

回答

1

必須必須使用PreparedStatement和參數化的SQL語句。

String query="select * from dbo.Monthly_PFSPL where Convert(datetime,Added_Date,103) between ? and ?"; 
相關問題