From c7f723ffe21b90660d060ef834e7e9b595153843 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9F=B3=E5=8E=9F=E3=80=80=E5=8F=B6=E5=A4=A7?= <26-k-ishihara-acrowavenet@it-college.co.jp> Date: Thu, 29 Oct 2026 10:28:59 +0900 Subject: [PATCH] =?UTF-8?q?10/29=206=E6=AE=B5=E9=9A=8E=E5=AE=8C=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/rhizome/example/dao/EmployeeDAO.java | 44 ++++++++++++++++++ src/com/rhizome/example/main/Main.java | 49 ++++++++++++++++++++ 2 files changed, 93 insertions(+) diff --git a/src/com/rhizome/example/dao/EmployeeDAO.java b/src/com/rhizome/example/dao/EmployeeDAO.java index 28cef51..905d473 100644 --- a/src/com/rhizome/example/dao/EmployeeDAO.java +++ b/src/com/rhizome/example/dao/EmployeeDAO.java @@ -183,5 +183,49 @@ public class EmployeeDAO { DbUtil.closeStatement(stmt); } } + + //社員情報更新 + public void empUpdate( + int id, + String name, + String kana, + String mail, + String password, + int departmentId) + throws SQLException { + + //SQL作成 + StringBuilder sql = new StringBuilder(); + + sql.append(" UPDATE employee "); + sql.append(" SET "); + sql.append(" nm_employee = ?, "); + sql.append(" kn_employee = ?, "); + sql.append(" mail_address = ?, "); + sql.append(" password = ?, "); + sql.append(" id_department = ? "); + sql.append(" WHERE id_employee = ? "); + + try { + + //PreparedStatement生成 + stmt = con.prepareStatement(sql.toString()); + //値設定 + stmt.setString(1, name); + stmt.setString(2, kana); + stmt.setString(3, mail); + stmt.setString(4, password); + stmt.setInt(5, departmentId); + stmt.setInt(6, id); + + // SQL実行 + stmt.executeUpdate(); + + } finally { + + // Statement切断 + DbUtil.closeStatement(stmt); + } + } } diff --git a/src/com/rhizome/example/main/Main.java b/src/com/rhizome/example/main/Main.java index e7c2741..d2b1354 100644 --- a/src/com/rhizome/example/main/Main.java +++ b/src/com/rhizome/example/main/Main.java @@ -57,6 +57,7 @@ public class Main { empInsert(); break; case "3": + empUpdate(); break; case "4": empDelete(); @@ -245,5 +246,53 @@ public class Main { DbUtil.closeConnection(empDao.con); } } + + //社員情報更新 + public static void empUpdate() throws ClassNotFoundException, SQLException { + //DB接続 + Connection con = DbUtil.getConnection(); + EmployeeDAO empDao = new EmployeeDAO(con); + + try { + //更新対象ID入力 + String strId = inputCheck("ID", true); + int id = Integer.parseInt(strId); + + //存在チェック + List empList = empDao.selectById(id); + + if (empList.size() == 0) { + System.out.println("入力された値で情報がみつかりませんでした"); + + return; + } + + //社員名入力 + String name = inputCheck("社員名", false); + //フリガナ入力 + String kana = inputCheck("フリガナ", false); + //メールアドレス入力 + String mail = inputCheck("メールアドレス", false); + //パスワード入力 + String password = inputCheck("パスワード", false); + //部署ID入力 + String departmentId = inputCheck("部署ID", true); + + //更新処理 + empDao.empUpdate( + id, + name, + kana, + mail, + password, + Integer.parseInt(departmentId)); + + System.out.println("更新が完了しました"); + + } finally { + + DbUtil.closeConnection(empDao.con); + } + } }