SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
// date here is a string of format yyyy-MM-dd
 java.util.Date date_1 = df.parse(date) ;
java.sql.Date sqldate = new java.sql.Date(date_1.getTime());
sql = "select * from fgs_stock_report where Report_date = ? ";

PreparedStatement two = con.prepareStatement(sql);
two.setDate(1,sqldate);ResultSet rs ;
rs = two.executeQuery(sql) ;


在这里,我得到一个Java Sql Exception,要求附近的正确语法? 。我是一个初学者,我搜寻了很多解决方案,但找不到。请帮我。

最佳答案

我想我看到了问题,您正在使用Statement.executeQuery(String),但是您想要的是PreparedStatement.executeQuery()-即。

PreparedStatement two = con.prepareStatement(sql); // <-- Prepare a Statement.
two.setDate(1,sqldate);                            // <-- bind the parameter.
ResultSet rs ;
rs = two.executeQuery(sql) ;                       // <-- throw it away and use raw sql


你想要的是

 ResultSet rs = two.executeQuery();                // <-- I'd use one line

关于mysql - MySQL Jdbc将字符串转换为日期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24478214/

10-13 02:42