java.sql.SQLException:参数索引超出范围(1 >参数数,即 0)问题



谁能告诉我哪里错了?

private void Submit_ButtonActionPerformed(java.awt.event.ActionEvent evt) {                                              

if (First_Name.getText().isEmpty() || Last_Name.getText().isEmpty() || Contact_Number.getText().isEmpty() ){
JOptionPane.showMessageDialog(null, "Please Fill Up The Forms");            
clear();
}
//First_Name.getText();
//Last_Name.getText();
//Contact_Number.getText();
else{
try{                
String query = "INSERT INTO `user2`(`First Name`, `Last Name`, `Contact Number`) VALUES (?,?,?)";
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/registration?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC","root","");
pst = con.prepareStatement(query);
//pst.setString
pst.setString(0, First_Name.getText());
pst.setString(1, Last_Name.getText());
pst.setString(2,Contact_Number.getText());
pst.setInt(3, Integer.parseInt(Contact_Number.getText()));

pst.executeUpdate();
JOptionPane.showMessageDialog(null, "Successfully Registered");
clear();
}
catch (HeadlessException | SQLException e){
System.out.println(e);
}
}

当sql-string仅包含三个"&;?&"时,您将设置4个参数。

参数设置从1开始,而不是0。
查看更多详细信息:其他答案

最新更新