Java Class Library Guide (v11)

Java アプリケーションにおける一連の手順

以下の一連の手順は、アプリケーションまたはアプレットで通常使用されます。最初の 2 つの手順は、密結合型データベースでも、疎結合型データベースでも同じです。

  1. 実行環境として使用される Session のインスタンスを設定します。(Driver は静的クラスなので、インスタンス化する必要はありません。)また、アプリケーションまたはアプレットで複数のセッションを作成することもできます。
  2. URI を指定する Session.connectToDatabase() を呼び出して、データベースの Database オブジェクトを取得します。データベース URI の詳細については、『Pervasive PSQL Programmer's Guide』を参照してください。また、アクセスする個々のデータベースごとに、1 つのセッション内で複数の Database オブジェクトを取得することもできます。

ここで、ケース 1:アプリケーションが密結合型データベースのテーブルにアクセスする(Btrieve データベースは DDF を使用)またはケース 2:疎結合型データベースのデータ ファイル、または密結合型データベースのテーブルを標準的な方法で格納するデータ ファイルにアプリケーションがアクセスするを選択してください。

ケース 1:アプリケーションが密結合型データベースのテーブルにアクセスする

  1. オプションとして、アプリケーションがデータベースのテーブル名を認識していない場合は、Database.getTableNames を呼び出してテーブル名を取得します。
  2. Database.getTable を呼び出して、作業するテーブルごとに Table オブジェクトを取得します。
  3. オプションとして、アプリケーションが辞書から列の名前またはインデックスの名前を取得する必要がある場合は、テーブルごとに TableMetaData オブジェクトを取得します。
  4. アプリケーションで処理するテーブルごとに、少なくとも 1 つの RowSet オブジェクトを作成します。RowSet オブジェクトは、データの取得と変更に使用します。テーブルのすべての列を含むか、まったく含まない行セットを作成できます。手順 7 の詳細を参照してください。
    テーブル内をナビゲートする際に、複数のカレンシー(位置)を保持しながら同時にテーブルを処理したい場合、アプリケーションでは、1 つのテーブルに対して複数の RowSet を作成します。所定のテーブルの RowSet オブジェクトは、アプリケーションの実行中いつでも使用できます。つまり、異なるインデックス、異なる条件などによる取得に使用できます。
  5. 所定の行セットに対して
    1. 行セットの RowSetMetaData オブジェクトを取得します。
    2. 行セットが列を含めずに作成された場合は、必要な列を定義に追加します。
    3. 必要であれば、行のデフォルトの特性、たとえば、方向、アクセス パスなどを変更します。
    4. ベース テーブル内の選択した行のみを 1 つの行セットに含める場合は、選択条件、たとえば、addFirstTerm、addAndTerm などを定義します。
    5. Row オブジェクトを取得するための RowSet.getNext メソッドを呼び出します。オプションとして、RowSet のほかのメソッド、たとえば、getByIndex、getbyPercent、insertRow、updateRow などを呼び出します。
    6. 行で列の値を取得または設定するには、Row のメソッド、たとえば、getString、setString、getInt などを呼び出します。

      メモ

      手順 a ~ d はオプションであり、また、アプリケーションにもよりますが、行セットによっては必要でない場合があります。


ケース 2:疎結合型データベースのデータ ファイル、または密結合型データベースのテーブルを標準的な方法で格納するデータ ファイルにアプリケーションがアクセスする

  1. アプリケーションが動作する個々のデータ ファイルに対して、SCursor オブジェクトまたは XCursor オブジェクトを作成します。XCursor は、このファイルに対して Extended get オペレーションまたは Extended step オペレーションが実行される場合のみ必要です。オプションとして、複数の位置を同時に保持しながら、並行してファイルを処理したい場合、アプリケーションで同一ファイルに対して複数の Cursor オブジェクトを取得することができます。
  2. SCursor.BTRV を使用して、従来の Btrieve オペレーション、たとえば、open、get、step、insert などを実行します。

    メモ

    XCursor は SCursor の拡張なので、XCursor 上で BTRV メソッドを使用できます。


  3. オプションとして、データ フィールドにいくつかの FieldDef オブジェクトを定義したり、これらのフィールド オブジェクトを使用して選択基準、たとえば、XCursor.addFirstTerm などを設定して抽象リストを定義したり、getNextExtended のようなメソッドを使用して オペレーションを実行します。
  4. SCursor(XCursor)オブジェクトのプライベート データおよびキー バッファーでフィールドの値を取得または設定するには、getDString、setKString、getDInt4 などのメソッドを呼び出します。

以降では、これらの概要手順についてさらに詳しく説明します。


主要なクラスとメソッドの概要

Java クラス ライブラリ使用時の最初の手順