Я написал код для удаления записи в базе данных MySQL из моей программы Java. Он компилирует и запускает его успешно, но запись все еще находится в базе данных. Какие-либо предложения?PreparedStatement Удалить в Java
JButton btnDelete = new JButton("Delete");
btnDelete.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
try {
Object[] options = {"Yes", "No"};
Component form = null;
int n = JOptionPane.showOptionDialog(form, "Do you like to delete the record for Student ID: " +
textField_16.getText() + " ?", "Exit Confirmation", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options);
if(n == JOptionPane.YES_OPTION) {
String mock = textField_16.getText();
String sql = "DELETE FROM mockexam WHERE MockID =?";
PreparedStatement prest = con.prepareStatement(sql);
prest.setString(1, mock);
int val = prest.executeUpdate();
JOptionPane.showMessageDialog(frmDeleteMock, "The record has been deleted successfully.");
}
}
catch (SQLException e) {
e.printStackTrace();
JOptionPane.showMessageDialog(frmDeleteMock, "Record couldn't be deleted. Please try again.");
}
}
});
btnDelete.setBounds(45, 235, 89, 23);
panel_1.add(btnDelete);
executeUpdate возвращает int, в котором указывается, сколько было updatet, получить это значение и проверить его. – oers
Проверьте значение 'int val = prest.executeUpdate();' и посмотрите, какое значение оно возвращает. Если вы увидите, что узнаете. –
Является ли ключ для вашей записи фактически «MockID»? Обратите внимание, что выполнение удаления не будет вызывать ошибку, если она не находит запись для удаления из БД. – Perception