Javaを使ってMySQLテーブルにレコードを挿入する方法
はじめに
本記事では、JavaのJDBC(Java Database Connectivity)を使用して、MySQLデータベースのテーブルにレコードを挿入する手順を解説します。まずテーブルを作成し、その後Javaプログラムからデータを登録するまでの一連の流れを見ていきましょう。
1. MySQLでテーブルを作成する
まず、データを挿入するためのテーブルを作成します。以下はMySQLでテーブルを作成するクエリです。
mysql> create table DemoTable( Id int, Name varchar(30), CountryName varchar(30), Age int);Query OK, 0 rows affected (0.66 sec)
ここでは、「Id」「Name」「CountryName」「Age」の4つのカラムを持つ「DemoTable」というテーブルを作成しました。
2. JavaからMySQLデータベースにアクセスする
次に、MySQLデータベースに接続してレコードを挿入するJavaコードを紹介します。
import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.Statement;public class AccessMySQLDatabase { public static void main(String[] args) { Connection con = null; Statement st = null; try { con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web?" + "useSSL=false", "root", "123456"); st = con.createStatement(); String accessDatabase = "insert into DemoTable(Id,Name,CountryName,Age)" + " values(100,'David','AUS',24) "; int result = st.executeUpdate(accessDatabase); if (result > 0) { System.out.println("Record Inserted! Check your table now!"); } } catch (Exception e) { e.printStackTrace(); } }}コードのポイント
- DriverManager.getConnection():JDBCドライバ経由でMySQLサーバー(localhost:3306)の「web」データベースに接続します。
- createStatement():SQL文を実行するためのStatementオブジェクトを生成します。
- executeUpdate():INSERT文を実行し、影響を受けた行数を返します。戻り値が0より大きければ挿入成功です。
3. 実行結果の確認
上記のJavaプログラムを実行すると、以下の出力が得られます。
Record Inserted! Check your table now!
4. MySQLテーブルの中身を確認する
実際にレコードが挿入されたか、MySQL側で確認してみましょう。
mysql> select * from DemoTable;
実行結果は以下の通りです。
+------+-------+-------------+------+| Id | Name | CountryName | Age |+------+-------+-------------+------+| 100 | David | AUS | 24 |+------+-------+-------------+------+1 row in set (0.00 sec)
このように、Javaプログラムから実行したINSERT文によって、Id「100」、Name「David」、CountryName「AUS」、Age「24」のレコードが正常に登録されていることがわかります。
まとめ
JavaとJDBCを使えば、MySQLデータベースへの接続からレコードの挿入までを簡単に行うことができます。なお、実運用ではSQLインジェクション対策としてPreparedStatementの使用や、接続情報の外部化、try-with-resourcesによるリソースの自動クローズなどを検討することをおすすめします。
-
JavaでMySQLテーブルのカラム数を取得・カウントする方法
MySQLテーブルのカラム(列)数をJavaで取得するには、ResultSetMetaDataインターフェースを使用します。ResultSetMetaDataを活用すれば、カラムの総数だけでなく、各カラムの名前やデータ型といった詳細情報も簡単に取得できます。前提:サンプルテーブルの作成まずは動作確認用のテーブルを作成しましょう。以下のSQLでは、3つのカラムを持つ「DemoTable」を作成しています。mysql> create table DemoTable -> ( -> St
-
JavaでMySQLテーブルに1つのカラムのみを挿入する方法
JavaとMySQLを連携させる際、テーブルの一部のカラムだけにデータを挿入したいケースはよくあります。その場合は、JDBCのINSERT INTOステートメントを使用します。挿入対象のカラム名を明示的に指定することで、他のカラムには影響を与えずに1つのカラムのみへ値を登録できます。この記事では、実際にテーブルを作成し、Javaのコードから「Name」という1つのカラムだけにデータを挿入する手順を解説します。1. 挿入先のテーブルを作成するまず、MySQLで以下のようにテーブルを作成しておきましょう。ここでは、varchar型の「Name」カラムを1つだけ持つシンプルなテーブルを用意します。m