DBアクセス!!JDBC
作成:2001/06/05 UTASHIRO

1.データベースへのアクセス

■データベースの準備

手頃なDBといえばACCESSですよね。ここでは、ACCESS(MDB)を使用してJAVAでデータベースにアクセスを行う方法を説明します。
※ここで説明をするのは、DBアクセスの1つの方法でしかありません。JAVAの用途によってはほかの方法でアクセスしなければいけないこともありますので注意してください。

jdbc_test.mdbという名前でACCESSの空のDBを用意してください。

クエリーの新規作成でSQLを表示し、下記のSQLを1行づつ順に実行します。

CREATE TABLE 氏名 (ID TEXT, NAME TEXT);
INSERT INTO 氏名 (ID,NAME) VALUES ('1', '山田 太郎');
INSERT INTO 氏名 (ID,NAME) VALUES ('2', '田中 仁史');
INSERT INTO 氏名 (ID,NAME) VALUES ('3', '鈴木 次郎');
INSERT INTO 氏名 (ID,NAME) VALUES ('4', '砂糖 俊夫');

■ODBCデータソースの登録

1)コントロールパネルからデータソース(ODBC)を起動します。(Windows2000の場合は、管理ツールの中にあります。)
2) システムDSNタグを選択
3)追加ボタンを押します。
4)Microsoft Access Driver(.mdb)を一覧から選択し、完了ボタンを押します。
5)データ-ソース名に「」と入力します。
6)データーベースの「選択」ボタンを押します。
7)データーベースの準備で作成した、Accessのmdbファイルを選択します。
8)「OK」ボタンを押して行き画面を閉じます。

■コーディング

メモ帳で【jdbcsample.java】ファイルを作ります。

import java.sql.*;
public class jdbcsample{
public static void main(String[] args){
try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:JDBC-TEST";
Connection con = DriverManager.getConnection(url, "", "");
Statement stmt = con.createStatement();
String query = "SELECT * FROM \"氏名\"";
ResultSet rs = stmt.executeQuery(query);
while(rs.next()){
int id = rs.getInt("ID");
String name = rs.getString("NAME");
System.out.println("ID : " + id + " : " + name);
}
} catch(SQLException sqlex){
printSQLException(sqlex);
} catch(Exception ex){
System.err.println(ex.getMessage());
}
return;
}
private static void printSQLException(SQLException ex){
System.err.println("[SQL Exception]");
while(ex != null){
try{
byte b[] = ex.getMessage().getBytes("8859_1");
System.err.println(new String(b, "SJIS"));
} catch(Exception ue_ex){
/* */
} System.err.println("SQL State: " + ex.getSQLState());
System.err.println("Error Code: " + ex.getErrorCode());
ex = ex.getNextException();
}
return;
}
}