Maison >base de données >tutoriel mysql >Pourquoi est-ce que j'obtiens « java.sql.SQLException : index de paramètre hors plage » ?
java.sql.SQLException : index de paramètre hors plage (1 > nombre de paramètres, qui est 0)
Cette erreur se produit lorsque vous essayez de définir un paramètre dans une instruction préparée qui n'a pas d'espace réservé correspondant dans le SQL requête.
Causes :
Solution :
Pour résoudre cette erreur, assurez-vous que la requête SQL contient le nombre correct d'espaces réservés pour les paramètres en cours de définition. Par exemple :
String sql = "INSERT INTO tablename (col1, col2, col3) VALUES (?, ?, ?)"; PreparedStatement preparedStatement = connection.prepareStatement(sql); preparedStatement.setString(1, val1); preparedStatement.setString(2, val2); preparedStatement.setString(3, val3);
Remarques supplémentaires :
String sql = String.format("INSERT INTO tablename (col1, col2, col3) VALUES (%s, %s, %s)", val1, val2, val3);
Références :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!