PowerBuilder から JDBC 経由で BASE のデータ に接続

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
PowerBuilder で BASE JDBC Driver を使用して BASE のデータ にアクセスする方法を紹介します。



CData JDBC ドライバー for BASE は、 PowerBuilder を含む、JDBC をサポートするあらゆるプラットフォームや開発技術から使用できる標準ベースのコントロールです。 この記事では、PowerBuilder で CData JDBC Driver for BASE を使用する方法について説明します。

ここでは、CData JDBC Driver for BASE を使用してデータを取得する基本的な PowerBuilder アプリケーションの作成方法を説明します。

PowerBuilder から BASE のデータ に接続

以下の手順に従って、Database Painter ツールを使用し、BASE 用の JDBC URL に基づくデータベースプロファイルを作成します。データベースプロファイルを使用して接続プロパティを保存できます。Database Painter では、データをグラフィカルに操作したり、SQL クエリを実行したりできます。

  1. ドライバーの JAR ファイルを PowerBuilder のクラスパスに追加します。CLASSPATH システム環境変数を、インストールディレクトリの lib サブフォルダにあるドライバー JAR へのパスに設定します。

    Note: PowerBuilder Classic を使用している場合は、Tools -> System Options -> Java をクリックしてドライバー JAR へのパスを追加することもできます。

  2. Tools -> Database Painter をクリックします。
  3. JDBC ノードを右クリックし、New Profile をクリックします。
  4. Database Profile Setup ダイアログで、以下の情報を入力します。
    • Profile Name: プロファイルのわかりやすい名前を入力します。
    • Driver Name: ドライバーのクラス名を入力します: cdata.jdbc.api.APIDriver
    • URL: JDBC URL を入力します。

      最初に、BASE のOAuth アプリを作成する必要があります。作成するには、https://developers.thebase.in/dashboardにアクセスし、「Create New Application」ボタンをクリックします。アプリ名を入力し、リダイレクトURLを指定して「Register」をクリックします。これで、クライアントIDとクライアントシークレットが表示されます。

      次に、プロファイルをダウンロードしてドライバーがアクセス可能な場所に配置します。こちらからプロファイルをダウンロードして、「C:/profiles/」 などに設置してください。

      以下の接続プロパティを設定すると、接続できるようになります。

      • AuthScheme: OAuth に設定します。
      • OAuthClientID: アプリ設定で指定したOAuth クライアントID を設定します。
      • OAuthClientSecret: アプリ設定で指定したOAuth クライアントシークレットを設定します。
      • CallbackURL: アプリ設定で指定したリダイレクトURI を設定します。
      • InitiateOAuth: GETANDREFRESH に設定します。この設定を使って、OAuthAccessToken を取得するプロセスを管理できます。

      組み込みの接続文字列デザイナー

      JDBC URL の構築には、BASE JDBC Driver に組み込まれている接続文字列デザイナーが便利です。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。

      java -jar cdata.jdbc.api.jar
      

      接続プロパティを入力し、接続文字列をクリップボードにコピーします。一般的な JDBC URL は以下のとおりです。

      jdbc:api:Profile=Base.apip;Authscheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;
  5. テーブルを表示および編集するには、テーブルを右クリックして Edit Data -> Grid をクリックします。

PowerBuilder コントロールで BASE のデータ を使用

標準の PowerBuilder オブジェクトを使用して JDBC データソースに接続し、クエリを実行できます。以下の例では、BASE のデータ を DataWindow に取得する方法を示します。以下のコードを open メソッドに追加できます。

SQLCA.DBMS = "JDBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Driver='cdata.jdbc.api.APIDriver',URL='jdbc:api:Profile=Base.apip;Authscheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;";
CONNECT USING SQLCA;
dw_customers, orders.SetTransObject(SQLCA);
dw_customers, orders.Retrieve();

はじめる準備はできましたか?

API Driver で BASE のライブデータに接続

BASE に接続