2016-05-19 37 views
0

这里是东西不能插入数据到数据库

ps = conn.prepareStatement("INSERT INTO goods_country(goodsId,goodsCountry) VALUES (?,?)"); 
ps.setInt(1, this.returnId()); 
ps.setString(2, goodsCountry); 
int exe = ps.executeUpdate(); 

进出口确保this.returnId()goodsCountry具有价值, 当运行出现此错误

java.sql.SQLException中的验证码:参数索引超出范围(1>参数数量,即0)。 在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:963) 在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:896) 在com.mysql.jdbc.SQLError.createSQLException(的SQLError。 java:885) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:860) at com.mysql.jdbc.PreparedStatement.checkBounds(PreparedStatement.java:3321) at com.mysql.jdbc.PreparedStatement。在com.backend上的com.mysql.jdbc.PreparedStatement.setInt(PreparedStatement.java:3296) 上设置setInternal model.MoviesBeanBO.inserCountry(MoviesBeanBO.java:67) at com.backend.controller.MovieOnBoard .doPost(MovieOnBoard.java:71) at javax.servlet.http.HttpServlet.service(HttpServlet.java:646) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at org.apache .catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) at org.apache.tomcat.websocket.server.WsFilter.doFilter (WsFilter.java:52) 在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 在过滤器.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:25)

不知道发生了什么, 如果有人可以帮忙,我会非常感激。谢谢!

+1

在代码中看不到错误。你使用的是哪个版本的jdbc驱动程序?也许你可以验证如果你使用另一个驱动程序版本时出现这个错误 – ZeusNet

+0

尝试删除值和(?,?)之间的空格 –

回答

0

尝试值和问号

ps = conn.prepareStatement("INSERT INTO goods_country(goodsId,goodsCountry) VALUES(?,?)"); 
    ps.setInt(1, this.returnId()); 
    ps.setString(2, goodsCountry); 
    int exe = ps.executeUpdate(); 

或驱动程序jar文件需要被检查之间移除空间。