/// <summary> グリッドボタンでの削除処理 /// <param name="model">削除対象の情報</param> private void GridDelete(KanjaYoyakuModel model) { string strCon = "Server=localhost; Database=medical_manegement; Uid=root; Pwd=nekonyanta"; MySqlConnection con = new MySqlConnection(strCon); con.Open(); try { // DELETE文を作成しパラメータを追加 StringBuilder sb = new StringBuilder(); MySqlCommand cmd; string msg; if (mode) // 患者一覧モードなら { sb.AppendLine("DELETE FROM KANJA"); sb.AppendLine("WHERE"); sb.AppendLine("ID=@ID"); cmd = new MySqlCommand(sb.ToString(), con); cmd.Parameters.Add(new MySqlParameter("@ID", model.Id)); msg = $"患者ID:{model.Id}\n氏名:{model.Name} 様\n"; } else // 予約一覧モードなら { sb.AppendLine("DELETE FROM YOYAKU"); sb.AppendLine("WHERE"); sb.AppendLine(" 患者ID=@ID"); sb.AppendLine("AND 予約日=@YOYAKUDAY"); sb.AppendLine("AND 予約時間=@YOYAKUTIME"); sb.AppendLine("AND 受診科=@SINRYOKA"); cmd = new MySqlCommand(sb.ToString(), con); cmd.Parameters.Add(new MySqlParameter("@ID", model.Id)); cmd.Parameters.Add(new MySqlParameter("@YOYAKUDAY", model.YoyakuDay)); cmd.Parameters.Add(new MySqlParameter("@YOYAKUTIME", model.TimeTableNum)); cmd.Parameters.Add(new MySqlParameter("@SINRYOKA", model.SinryokaNum)); msg = $"患者ID:{model.Id}\n氏名:{model.Name} 様\n予約日:{model.YoyakuDay}\n予約時間:{model.YoyakuTime}\n受診科:{model.Sinryoka}"; } DialogResult result = MessageBox.Show($"{msg}\nこの情報を削除しますか?", "最終確認", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (result == DialogResult.OK) { cmd.ExecuteNonQuery(); MessageBox.Show($"{msg}\nこの情報を削除しました"); StartMenuForm.CheckExistKanja(); // 登録受診者数を確認し0人なら新規登録を促す } else { MessageBox.Show("処理をキャンセルしました"); } } catch (Exception ex) { MessageBox.Show($"エラー詳細:\n{ex.Message}:\n{ex.InnerException}"); } finally { con.Close(); } }
/// <summary> 患者情報を削除する private void Sakujo() { string strCon = "Server=localhost; Database=medical_manegement; Uid=root; Pwd=nekonyanta"; MySqlConnection con = new MySqlConnection(strCon); con.Open(); try { // DELETE文を作成 StringBuilder sb = new StringBuilder(); sb.AppendLine("DELETE FROM KANJA"); sb.AppendLine("WHERE"); sb.AppendLine("ID=@ID"); // コマンドを生成し実行 MySqlCommand cmd = new MySqlCommand(sb.ToString(), con); cmd.Parameters.Add(new MySqlParameter("@ID", cmbID.SelectedValue)); // メッセージボックスの選択内容で分岐(Yesの時だけ登録させる) DialogResult result = MessageBox.Show($"患者ID:{cmbID.SelectedValue}\n氏名:{txtName.Text} 様\nこの患者情報を削除しますか?", "最終確認", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (result == DialogResult.OK) { cmd.ExecuteNonQuery(); MessageBox.Show($"患者ID:{cmbID.SelectedValue}の情報を削除しました"); mode = true; // モードの初期化 InitJusinsyaItems(); // 入力をデフォルトに戻す StartMenuForm.CheckExistKanja(); // 登録受診者数を確認し0人なら新規登録を促す } else { MessageBox.Show("処理をキャンセルしました"); } } catch (Exception ex) { MessageBox.Show($"エラー詳細:\n{ex.Message}:\n{ex.InnerException}"); } finally { con.Close(); } }