Top > JDBC

JDBCとは

JDBCとは、JavaからデータベースにアクセスするためのAPIである。要するにデータベースにアクセスするためのクラス群。ODBC接続のためのAPIならJavaの標準インストールのクラスで実装可能だが、MySQLの場合はドライバをインストールする必要がある。

ドライバのインストール

JDBCの仕様はSunがインターフェースとして公開し、ドライバはデータベース開発元が基本的に提供している。MySQLのサイトからJDBCドライバをダウンロードしてインストールする。インストールといっても適当なフォルダに以下のファイルを解凍するだけでよい。

mysql-connector-java-3.1.12-bin.jar

クラスバス追加

実行の度にクラスパスを指定するのはめんどーなので、クラスパスを登録しておく。

変数名:CLASSPATH
変数値:.;c\java\lib\mysql-connector-java-3.1.12-bin.jar

データの抽出

MySQLで作成したデータベース領域golf_scoreのテーブルplayerからデータを抽出して表示してみる。

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 
 
-
-
|
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
|
|
!
|
-
|
-
|
|
|
|
!
!
!
import java.sql.*;
 
public class SelectPlayerMySQL {
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        
        try {
            /** ドライバクラスのロード */
//			Class.forName("org.gjt.mm.mysql.Driver");
            Class.forName("com.mysql.jdbc.Driver");
 
            /** データベース接続 */
            String url = "jdbc:mysql://localhost/golf_score"
                   + "?user=USER1&password=INIT"
                   + "&useUnicode=true&characterEncoding=cp932";
            conn = DriverManager.getConnection(url);
            
            /** ステートメントオブジェクトの作成 */
            stmt = conn.createStatement();
            String sql = "SELECT * FROM player";
            
            /** SQLステートメントの実行と結果の取得 */
            rs = stmt.executeQuery(sql);
            
            /** 抽出されたデータのループ */
            while (rs.next()) {
                /** ユーザーIDの取得 */
                int ucode = rs.getInt("UCODE");
                
                /** ユーザー名称の取得 */
                String uname1 = rs.getString("UNAME1");
                String uname2 = rs.getString("UNAME2");
                
                /** 抽出データの表示 */
                System.out.println(ucode + " " + uname1 + " " + uname2);
            }
            
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            /** データベース切断 */
            try {rs.close(); } catch (SQLException e) {e.printStackTrace();}
            try {stmt.close(); } catch (SQLException e) {e.printStackTrace();}
            try {conn.close(); } catch (SQLException e) {e.printStackTrace();}
        }
    }
}

実行結果

100 沖田 圭介
101 タイガー ウッズ
102 田仲 雪利
103 サンタ クロース
104 ジャム おじさん

感動!!

実はCLASSPATHの設定にミスがあってちょっと苦労してたりする。 (^^;


添付ファイル: filemysql-connector-java-3.1.12-bin.jar 577件 [詳細]

リロード   新規 編集 凍結 差分 添付 複製 名前変更   ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: 2007-12-19 (水) 00:03:36 (4198d)