質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
INSERT

INSERTとは、行を追加する、コンピュータのデータベース言語SQLにおけるデータ操作言語(DML)ステートメントの1つである

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

Q&A

解決済

1回答

940閲覧

SQL への INSERT実行について

beginner_7

総合スコア14

INSERT

INSERTとは、行を追加する、コンピュータのデータベース言語SQLにおけるデータ操作言語(DML)ステートメントの1つである

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

0グッド

0クリップ

投稿2019/10/19 09:27

お世話になります。JAVA初学者のものです。
現在ECLIPSEからMySQLへのINSERT文を実行したく試行錯誤しているのですが、
コード含めどうすれば良いのか分からないため質問をさせて頂ければ幸いです。

画像の「ユーザ新規登録」から受け取った各々の値を、別画像のSQLテーブルの①login_id ②name ③birth_date ④password へ、データ登録したいのですが、サーブレット、Daoではどういったコードを書けばよろしいでしょうか?

3時間ほど自分なりに試行錯誤してみたのですが一向に分からず…
お手数おかけしますが、何卒よろしくお願いいたします。

※蛇足ではありますが、最終的にはSELECT文を実行して「ユーザ情報詳細参照」の5項目のように表示したいです。
項目の登録・更新日時はデータ登録および更新時に、自動でテーブルへ登録されるようにテーブル作成の際に設定してあります。

**「①Insert_Servlet」** protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); String loginId = request.getParameter("login_id"); String password = request.getParameter("login_password"); String rePassword = request.getParameter("login_repassword"); String userName = request.getParameter("login_username"); String birth = request.getParameter("login_birth"); UserDao userDao = new UserDao(); UserBean action = userDao.addInfo(loginId, password, rePassword, userName, birth); } } **「②Insertを実行するDaoのコード」** public void addInfo(int id, String loginId, String name ,Date birthDate ,String password) { Connection conn = null; PreparedStatement ps = null; try { conn = DBManager.getConnection(); String sql = "INSERT INTO UserManagement.user (login_id,name,birth_date,password)VALUES" + "(?,'?','?','?')"; ps = conn.prepareStatement(sql); ps.setString(1, loginId); ps.setString(2, name); ps.setDate(3, birthDate); ps.setString(4, password); ps.executeUpdate(sql); } catch (SQLException e) { e.printStackTrace(); } finally { if (conn != null) { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } return; } **「ユーザ新規登録のJSP(bodyから)」** <body> <div class="container3"> <h1 class="insert_new_user">ユーザ新規登録</h1> <form action="Insert_Servlet" method="post"> <div class="row"> <div class="col-sm-2"> <p class="insert_login_text">ログインID</p> </div> <div class="col-sm-9"> <input type="text" size="48" name="login_id" class="insert_login"> </div> </div> <div class="row"> <div class="col-sm-2"> <p class="insert_password_text">パスワード</p> </div> <div class="col-sm-9"> <input type="password" size="48" name="login_password" class="insert_password"> </div> </div> <div class="repassword"> <div class="row"> <div class="col-sm-4"> <p class="insert_repassword_text">パスワード(確認)</p> </div> <div class="col-sm-8"> <input type="text" size="20" name="login_repassword" class="insert_repassword"> </div> </div> </div> <div class="row"> <div class="col-sm-2"> <p class="insert_user_text">ユーザ名</p> </div> <div class="col-sm-9"> <input type="password" size="48" name="login_username" class="insert_user"> </div> </div> <div class="row"> <div class="col-sm-2"> <p class="insert_birth_text">生年月日</p> </div> <div class="col-sm-9"> <input type="text" size="48" name="login_birth" class="insert_birth" placeholder="xxxx / yy / zz"> </div> </div> <input type="submit" class="btn btn-success stretched-link" value="登録" id="insert"> </form> <a href="UserListServlet" class="back">戻る</a> </div> </body> **「④付随するbeanのコード」** public class UserBean implements Serializable { private int id; private String loginId; private String name; private Date birthDate; private String password; private String createDate; private String updateDate; public UserBean(String loginIdData, String nameData) { } public UserBean(int id2, String loginId2, String name2, java.sql.Date birthDate2, String password2, String createDate2, String updateDate2) { } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getLoginId() { return loginId; } public void setLoginId(String loginId) { this.loginId = loginId; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getBirthDate() { return birthDate; } public void setBirthDate(Date birthDate) { this.birthDate = birthDate; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getCreateDate() { return createDate; } public void setCreateDate(String createDate) { this.createDate = createDate; } public String getUpdateDate() { return updateDate; } public void setUpdateDate(String updateDate) { this.updateDate = updateDate; } }

イメージ説明

イメージ説明

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

下記にて解決致しました。
https://teratail.com/questions/218184

投稿2019/10/20 02:56

beginner_7

総合スコア14

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問