データベース コンポーネントを追加する(コード不要の IBX チュートリアル)

提供: RAD Studio
移動先: 案内検索

チュートリアル:InterBase Express を使用してコードを書かずにアプリケーションを作成する への移動

この例では、テキスト データと画像データを含むデータベース テーブルを表示し、その中を移動する方法を学びます。

概要

コンポーネントを組み立てた後のダイアログ ボックスは次のようになります。

FinalIDE-InterBaseExpress.png


ビジュアル コンポーネントは、TPanel コンポーネントの上に配置します。 ビジュアル コンポーネントには、データベースの画像やテキストを表示できるデータベース対応コンポーネントが含まれます。 図からわかるように、データベース対応コンポーネントには、デザイン モードで作業をしている間にもデータベースのデータが表示されます。

図では、TIBDatabaseTIBDatabase などの 4 つのデータベース コンポーネントが TDBImageTDBImage の上に置かれています。 これらは表示されない非ビジュアル コンポーネントなので、フォーム上のどこに置いても問題ありません。

InterBase のインストール

この例では、InterBase がインストールされていることが必須となります。

  • InterBase 2020 は、RAD Studio Sydney インストールファイル内に含まれています。
  • スタート | プログラム | Embarcadero InterBase 2020 | 64-bit/32-bit instance = gds_db | InterBase サーバー マネージャ [instance = gds_db] を選択し、InterBase サーバーが実行されていることを確認します。例を作成して実行するには、InterBase サーバーが稼働している必要があります。
  • システム パスに gds32.dll ファイルが含まれていることを確認します。

プロジェクトの作成

新規プロジェクトを作成します。

  • Delphi の場合は、[ファイル|新規作成|VCL フォーム アプリケーション - Delphi]を選択します。
  • C++ の場合は、[ファイル|新規作成|VCL フォーム アプリケーション - C++Builder]を選択します。

オブジェクト インスペクタで、フォームの Caption プロパティを "FISH FACTS" に設定します。 フォームの Height コンポーネントを 425 に、Width コンポーネントを 550 に変更します。

[ファイル|すべて保存]をクリックしてプロジェクトを保存します。

  • Delphi の場合、ファイルを FFactWin.pas という名前で保存します。 プロジェクトは FishFact.dproj という名前で保存します。
  • C++ の場合、ファイルを FFactWin.cpp という名前で保存します。 プロジェクトは FishFact.cbproj という名前で保存します。

この後のアプリケーションに関する作業は、プログラミング言語に左右されません。 Delphi でも C++Builder でも同じようにコンポーネントを扱うことができます。 コードを書く必要はありません。

データベース コンポーネントを追加する

まず、データベース コンポーネントを追加します。 その後で、データベース対応コンポーネントを構成して、データベース コンポーネントからデータを取得できるようにします。

  1. ツール パレットから、TIBDatabase(InterBase データベース接続を表す)をフォーム上にドラッグします。
  2. 次に、データベースのプロパティを設定します。

メモ: TIBDatabase のプロパティを設定するには、2 つのツールを使用する必要があります。

DBCompEdt-InterBaseExpress.png
  • DatabaseNameプロパティ([オブジェクト インスペクタ]で)または[データベース]フィールド([データベース コンポーネント設定]で)をデータベースのファイル パスに設定します。 このチュートリアルでは、RAD Studio と一緒にインストールされている DBDEMOS データベースを使用します。 パスは通常、C:\Users\Public\Documents\Embarcadero\Studio\21.0\Samples\Data\dbdemos.gdb です。
  • フォーム デザイナで、TIBDatabase を選択します。 オブジェクト インスペクタで、Params プロパティの横の参照([...])ボタンをクリックして、文字列リスト エディタを開きます。 次の 2 行を入力します(データベース用のユーザー名とパスワードを指定するためのものです)。
user_name=sysdba
password=masterkey
[OK]をクリックして文字列リスト エディタを閉じます。
  • これで、LoginPrompt を False に設定するか([オブジェクト インスペクタ]で)、[ログイン プロンプト]をオフにした([データベース コンポーネント設定]で)場合に、データベースに接続するたびにユーザー名とパスワードを入力するよう求められることがなくなります。
  • 最後に、オブジェクト インスペクタで TIBDatabaseConnected を True に設定します。

メモ: この例のようにアプリケーションにパスワードを埋め込むと、誰でもログインすることなくデータベースにアクセスできるようになります。

  1. フォームに TIBTransaction を追加します。 TIBTransaction は、データベース接続を制御するためのものです。 データベース内のデータにアクセスするには、データベース コンポーネントの他に TIBTransaction が必要です。
  2. オブジェクト インスペクタで TIBTransaction を構成します。ドロップダウン メニューを使って、DefaultDatabase プロパティを "IBDatabase1" に設定してください。
  3. フォーム デザイナで TIBDatabase コンポーネントを選択し、DefaultTransaction プロパティを "IBTransaction1" に設定します。 これで 2 つのコンポーネントが結び付けられます。
  4. TIBDataSet をフォーム上に置きます。 このコンポーネントはデータベース テーブルをカプセル化するためのものです。
    • Transaction プロパティを "IBTransaction1" に設定します。
    • ドロップダウン メニューを使用して Database プロパティを "IBDatabase1" に設定することで、この TIBDataSet をデータベースに接続します。
    • "IBDataSet1" TIBDataSet を右クリックして、[SQL の編集]を選択します。
    • CommandText プロパティを、select * from BIOLIFE に設定します。
    • "IBDataSet1" TIBDataSet を右クリックして、[データセットの編集]を選択します。
    • "SPECIES_NO" を [キー フィールド]列から選択し、[SQL 文の生成]ボタンをクリックします。
    • [OK]ボタンをクリックしてウィザードを閉じます。
  5. フォームに TDataSource を追加します。 このコンポーネントは、TIBDataSet とデータ対応コントロール間のインターフェイスとして機能します。 ドロップダウン メニューで、TDataSourceDataSet を、"IBDataSet1" に設定します。

これでデータベース コンポーネントが配置されました。次は、データベース データを表示するためのコンポーネントの追加に進みます。

次へ

ビジュアル コンポーネントの追加