2016-05-19 18 views
0

hier ist die Sachekönnen keine Daten in die Datenbank einfügen

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

Ich bin sicher, dass this.returnId() und goodsCountry Wert hat wenn Sie diesen Code ausführen, die dieser Fehler auftreten

java.sql.SQLException : Parameterindex außerhalb des Bereichs (1> Anzahl der Parameter, die 0 ist). bei com.mysql.jdbc.SQLError.createSQLException (SQLError.java:963) bei com.mysql.jdbc.SQLError.createSQLException (SQLError.java:896) bei com.mysql.jdbc.SQLError.createSQLException (SQLError. Java: 885) bei com.mysql.jdbc.SQLError.createSQLException (SQLError.java:860) bei com.mysql.jdbc.PreparedStatement.checkBounds (PreparedStatement.java:3321) bei com.mysql.jdbc.PreparedStatement. setInternal (PreparedStatement.java:3306) bei com.mysql.jdbc.PreparedStatement.setInternal (PreparedStatement.java:3345) bei com.mysql.jdbc.PreparedStatement.setInt (PreparedStatement.java:3296) bei com.backend. model.MoviesBeanBO.inserCountry (MoviesBeanBO.java:67) bei com.backend.controller.MovieOnBoard .doPost (MovieOnBoard.java:71) bei javax.servlet.http.HttpServlet.service (HttpServlet.java:646) bei javax.servlet.http.HttpServlet.service (HttpServlet.java:727) bei org.apache .catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:303) bei org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:208) bei org.apache.tomcat.websocket.server.WsFilter.doFilter (WsFilter.java:52) bei org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:241) bei org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:208) bei Filter .SetCharacterEncodingFilter.doFilter (SetCharacterEncodingFilter.java:25)

kann nicht herausfinden, was passiert ist, wenn jemand helfen kann, wäre ich sehr dankbar. Danke!

+1

In Ihrem Code wird kein Fehler angezeigt. Welche Version des jdbc-Treibers verwendest du? Vielleicht könnten Sie überprüfen, ob dieser Fehler auftritt, wenn Sie eine andere Treiberversion verwenden – ZeusNet

+0

Versuchen Sie, den Abstand zwischen den Werten zu entfernen und (?,?) –

Antwort

0

Versuchen Raum zwischen den Werten und Fragezeichen entfernen

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

oder die Treiber-JAR-Datei überprüft werden muss.

Verwandte Themen