0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【chatGPT 対話備忘録】JDBCとは

0
Posted at

私:
JDBCとは

ChatGPT:
JDBC(Java Database Connectivity) は、Javaでデータベースに接続し、SQLを使ってデータの操作(取得、挿入、更新、削除)を行うためのAPI(Application Programming Interface)です。JDBCを使用すると、Javaアプリケーションからリレーショナルデータベース(RDBMS)にアクセスできます。

JDBCの特徴
標準化されたAPI:

JDBCはJavaで標準化されており、異なるデータベースでも同じ方法で操作可能です。
各データベースベンダーは、自社のデータベースに対応するJDBCドライバを提供しています。
柔軟なデータベース操作:

SQLクエリを送信してデータベースを操作できます。
結果の取得やデータベースとのトランザクション管理が可能です。
トランザクション管理:

commitやrollbackを使用してトランザクションを制御できます。
JDBCの構成
JDBCは以下の主要な要素で構成されています:

JDBCドライバ:

データベースとJavaアプリケーションを接続するためのブリッジです。
例: MySQLのJDBCドライバ(mysql-connector-java)、MariaDBのJDBCドライバなど。
JDBC API:

Java標準ライブラリとして提供されるクラスやインターフェイスの集合。
主なインターフェイス:
DriverManager:接続を管理
Connection:データベース接続
Statement:SQL文の実行
ResultSet:SQLクエリの結果の処理
基本的なJDBC操作の流れ
JDBCドライバのロード:

java
Class.forName("com.mysql.cj.jdbc.Driver"); // MySQL用

データベースに接続:

java
Connection conn = DriverManager.getConnection(
    "jdbc:mysql://localhost:3306/your_database", "username", "password");

SQL文の作成と実行:

java
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM your_table");

結果の処理:

java
while (rs.next()) {
    System.out.println(rs.getString("column_name"));
}

リソースの解放:

java
rs.close();
stmt.close();
conn.close();

JDBCのメリット
データベース独立性:

JDBCはJava標準APIなので、異なるデータベースを操作する際もコードをほぼ変更する必要がありません(ドライバを切り替えるだけ)。
広範なサポート:

多くのデータベース(MySQL, PostgreSQL, Oracle, SQL Serverなど)で使用できます。
トランザクション制御:

複雑な操作にも対応。
JDBCの使用例
以下は、MySQLデータベースに接続してデータを取得する簡単な例です:

java

import java.sql.*;

public class JDBCExample {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/testdb";
        String user = "root";
        String password = "password";

        try (Connection conn = DriverManager.getConnection(url, user, password);
             Statement stmt = conn.createStatement();
             ResultSet rs = stmt.executeQuery("SELECT * FROM users")) {

            while (rs.next()) {
                System.out.println("ID: " + rs.getInt("id") + 
                                   ", Name: " + rs.getString("name"));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

これにより、JDBCを使用してデータベースに接続し、データを操作する基本的な流れを理解できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?