Я работаю над школьным проектом, в котором я работаю с базой данных mySQL. Особая часть, над которой я сейчас работаю, это то, что происходит, когда пользователь системы пытается удалить встречу из базы данных. У меня есть три оповещения, одно работает, одно представляет дважды, а другое вообще не работает. Первый цикл, который проверяет выбор, работает. Второй, который подтверждает, что пользователь хочет удалить, запускается дважды, т. Е. Когда вы нажимаете кнопку «ОК», он отображается снова, и вы должны нажать еще раз. Затем, кажется, перейти к нижней части, где я перезагрузить страницу. Когда он перезагружает страницу, я вижу, что встреча была успешно удалена, и она также отображается как удаленная на рабочем столе mysql. Так что это только среднее предупреждение, которое, кажется, не работает вообще. Я покопался в интернете, чтобы выяснить, почему один показывает дважды, а другой совсем нет, и хотя я нашел похожие вопросы и проблемы, я попытался использовать их решения, и я не увидел никакой разницы. Я ценю любую помощь в правильном направлении, будь то исправление кода или ресурсы! Заранее большое спасибо.
// delete selected appointment
@FXML
void handleDelete(MouseEvent event) throws IOException, SQLException {
Appointment ifSelected = appointmentTable.getSelectionModel().getSelectedItem();
if (ifSelected == null){
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("Deletion Error");
alert.setHeaderText("You didn't choose an appointment to delete.");
alert.setContentText("Please click ok in order to choose an appointment for deletion.");
alert.showAndWait();
}
else{
Alert alert = new Alert(Alert.AlertType.CONFIRMATION);
alert.setTitle("Appointment Deletion");
alert.setHeaderText("You are about to delete an appointment record permanantly.");
alert.setContentText("If you want to proceed, click ok.");
Optional<ButtonType> result = alert.showAndWait();
if (result.isPresent() && result.get() == ButtonType.OK){
Alert alert2 = new Alert(Alert.AlertType.INFORMATION);
alert2.setTitle("Deletion Successful");
alert2.setHeaderText("You successfully deleted the appointment with " + ifSelected.getCustomerName()+ " at " + ifSelected.getStartTime() + ".");
alert.setContentText("If you want to proceed, click ok.");
alert.show();
Statement stmt = conn.createStatement();
apptID = ifSelected.getAppointmentID();
String sqlDeleteAppointment = "DELETE FROM appointment WHERE appointmentId = " + apptID;
Query.makeQuery(sqlDeleteAppointment);
Parent root = FXMLLoader.load(getClass().getResource("appointmentScreen.fxml"));
scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
}}
'' '