Как я могу исправить эту ошибку: Индекс параметра вне диапазона - PullRequest
0 голосов
/ 07 мая 2019

Я работаю над страницей регистрации и не могу решить эту проблему, связанную с SQL.

Сообщение об ошибке

Индекс параметра вне диапазона (1 <количество параметров, равное 0) </p>

любая помощь будет оценена

try{
    String query = "INSERT INTO `Registration`(`ID`, `First Name`, `Second Name`, `email`, `account_type`, `Post code`, `Town`, `Address`, `Phone number`, `Organisation`, `Website`, `Username`, `Password`, `Payment Method`) VALUES ('?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?')";

con = DriverManager.getConnection("jdbc:mysql://localhost/globalmusic","root", "");

pst = con.prepareStatement(query);              
pst.setString(1, txtAnumber.getText());              
pst.setString(2, txtFname.getText());               
pst.setString(3, txtLname.getText());               
pst.setString(4, txtEaddress.getText());                
pst.setString(5, cmbAtype.getSelectedItem().toString());               
pst.setString(6, txtPcode.getText());                
pst.setString(7, txtTown.getText());                
pst.setString(8, txtAddress.getText());                
pst.setString(9, txtPnumber.getText());               
pst.setString(10, txtOrg.getText());                
pst.setString(11, txtWaddress.getText());              
pst.setString(12, txtUname.getText());               
pst.setString(13, txtPass.getText());             
pst.setString(14, cmbPmethod.getSelectedItem().toString());          
pst.executeUpdate();

JOptionPane.showMessageDialog(null, "Registration successful");

} catch(Exception ex) {
    JOptionPane.showMessageDialog(null, ex);
}

1 Ответ

0 голосов
/ 07 мая 2019

Вы не должны иметь кавычек для параметров заполнителя. Должно быть так:

"INSERT INTO Registration(ID, First Name, Second Name, email, account_type, Post code, Town, Address, Phone number, Organisation, Website, Username, Password, Payment Method) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...