ASH | サーバ | セキュリティ | Linux | FreeBSD | DB | Web | CGI | Perl | Java | XML | プログラム | ネットワーク | 標準 | Tips集

JDBCについて

JDBCとは

 JDBCとは、Java DataBase Connectivityの略で、JavaからデータベースをアクセスするためAPIです。 また、JDBCは、トレードマーク(TM)にもなっています。

JDBCの機能

 JDBCの主な機能を以下に示します。

機能 Javaオブジェクト
データベースとの接続 java.sql.DriverManager
java.sql.Connection
SQL文の実行
 データベースの検索(SELECT)
 データベースの更新(INSERT, UPDATE, DELETE)
java.sql.Statement
java.sql.PreparedStatement
java.sql.CallableStatement
SQLの実行結果へのアクセス java.sql.ResultSet

JDBCの特徴

 JDBCを使うことにより、データベースに依存しないインタフェースでアクセスできます。 ただし、SQLは規格化されていますが、データベースによって機能拡張などが行われています。 そのため、JDBCには、以下の機能で、データベースへの依存性を減らしています。

 また、JDBCは、Javaで記述されているため、ネットワークからダウンロードできます。

JDBCドライバの種類

JDBCドライバの4つのタイプ

 JDBCドライバは、実装方法により、以下の4種類があります。

JDBCドライバのデータベース対応

 JDBCドライバは、データベースによって対応状況が異なります。

JDBCによる接続用のURL

 JDBCで接続する場合は、以下のURLでアクセスします。

・PostgreSQLの場合
 jdbc:postgresql:[//ホスト名[:ポート番号]/]DB名

・Oracle(タイプ4)の場合
 jdbc:oracle:thin:@ホスト名:ポート番号:オラクルSID

JDBCによるトランザクション制御

 トランザクションとは、データベースを更新する単位のことです。
 JDBCでは、自動COMMIT機能により、1つ1つのSQL文をトランザクションとして処理します。 そのため、複数のSQL文でトランザクションを構成する場合には、この機能をFALSE(OFF)にして、プログラムで、COMMITやROLLBACKをする必要があります。

db = DriverManager.getConnection(url, usr, pwd);
st = db.createStatement();

try {
  st.executeUpdate("SQL文1");
  st.executeUpdate("SQL文2");
  ..........
  db.commit();

} catch (Exception ex) {
  db.rollback();
}

JDBCドライバのインストールと設定

PostgreSQLのJDBCドライバのインストールと設定

 PostgreSQLには、JavaクライアントからアクセスするためのJDBCドライバが付属しています。 JDBCドライバをメイクするためには、JDKがインストールされている必要があります。 開発ツールとしては、GNU make、GNU C、bison、flexが必要です。 Postgre7.1以降では、Javaベースのメイクツールのantも必要になりました。
 JDBCドライバをインストールする場合は、以下の設定をします。

・PostgreSQL7.1以降の場合
unix# configure --with-java
unix# make
unix# make install

・PostgreSQL7.0以前の場合
unix# cd src/interfaces/jdbc
unix# setenv CLASSPATH "${CLASSPATH}:."
unix# make
unix# mkdir -p /usr/local/pgsql/share/java
unix# cp postgresql.jar /usr/local/pgsql/share/java/.

 JDBCドライバを使うためには、各個人の環境にCLASSPATHの設定が必要です。

unix# setenv CLASSPATH "${CLASSPATH}:/usr/local/pgsql/share/java/postgresql.jar"

OracleのJDBCドライバのインストールと設定

 Oracleの場合、インストーラのメニューでJDBCドライバの選択ができます。 JDBCドライバを選択すると、自動的にインストールされます。



Copyright (C)1995-2002 ASH multimedia lab.
mail : info@ash.jp