すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB for OceanBase:OceanBase データベースへの JDBC ドライバーを使用した接続

最終更新日:Jan 19, 2025

このトピックでは、OceanBase Connector/J を使用して OceanBase データベースに接続して使用する方法について説明します。

前提条件

  • 基本的なデータベース開発環境が設定されていること。

  • Java 開発キット(JDK)8 がインストールされていること。

  • OceanBase Connector/J ドライバーを取得します。OceanBase の公式 Web サイトにアクセスし、[リソース] > [ダウンロード] > [OceanBase Cloud] > [ミドルウェア] を選択します。OceanBase Connector/J 内のバージョンをクリックしてダウンロードします。

JDBC ドライバーを使用して OceanBase データベースに接続する

手順 1: データベース接続パラメーターを取得する

詳細については、「接続パラメーターを取得する」をご参照ください。例:

$ obclient -hxxx.xxx.xxx.xxx -P3306 -u a**** -p******

データベース接続パラメーターは、データベースへのアクセスに必要な情報を指定します。サンプル コードで使用する前に、データベースにログオンしてデータベース接続パラメーターを確認できます。

オプション:

  • -h: 接続先の OceanBase データベースのドメイン名。

  • -P: OceanBase データベースに接続するためのポート。デフォルトでは、Oracle モードではポートは 1521 です。

  • -u: テナントアカウント。

  • -p: アカウントパスワード。

手順 2: OceanBase Connector/J をインストールする

OceanBase Connector/J の JAR パッケージをローカルの /usr/share/java パスに解凍し、一時的な環境変数を設定します。

$ mv ./oceanbase-client-{version}.jar /usr/share/java

一時的な環境変数を設定します。

$ export CLASSPATH=/usr/share/java/oceanbase-client-{version}.jar:$CLASSPATH

手順 3: サンプルコードを作成する

Java ファイル Test.java をコンパイルします。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.sql.Statement;

public class Test {
    public static void main(String[] args) {
        try {

            Class.forName("com.oceanbase.jdbc.Driver");
            Connection connection = DriverManager.getConnection("jdbc:oceanbase://xxx.xxx.xxx.xxx:3306/?pool=false&user=a****&password=******");
            System.out.println(connection.getAutoCommit());
            Statement sm = connection.createStatement();
            // t_meta_form という名前のテーブルを作成します。
            sm.executeUpdate("CREATE TABLE t_meta_form (name varchar(36) , id int)");
            // データを挿入します。
            sm.executeUpdate("insert into t_meta_form values ('an','1')");
            // データをクエリし、結果を出力します。
            ResultSet rs = sm.executeQuery("select * from t_meta_form");
            while (rs.next()) {
                String name = rs.getString("name");
                String id = rs.getString("id");
                System.out.println(name + ','+ id);
            }
            // テーブルを削除します。
            sm.executeUpdate("drop table t_meta_form");
        }catch (SQLException ex) {
            System.out.println("error!");
            ex.printStackTrace() ;
        }catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

コード内のデータベース接続パラメーターを変更します。次のパラメーターと形式を参照してください。パラメーター値は手順 1 で取得します。

  • url: 接続先の OceanBase データベースのドメイン名とポート番号。 オプションと オプションに対応します。例: 。 Oracle テナントのデフォルトのポート番号は 1521 です。 -h および -P オプション。例:jdbc:oceanbase://IP:ポート/?pool=falseOracle テナントの場合、デフォルト ポート番号は 1521 です。

  • user: テナントアカウント。 オプションに対応します。 -u オプション。

  • password: テナントアカウントのパスワード。 オプションに対応します。 -p オプション。

手順 4: サンプルコードを実行する

  1. コードを編集した後、次のコマンドを実行します。

    $ javac Test.java
  2. コードを実行します。

    $ java Test
  3. 次の結果が返された場合、データベースは接続されており、サンプルステートメントは正しく実行されています。

    true
    an,1