VCL フォーム dbExpress データベース アプリケーションを構築する
次の手順では、dbExpress データベース アプリケーションを構築する方法を説明します。
VCL フォーム dbExpress アプリケーションの構築は、次の手順で構成されています。
- データベース接続をセットアップする。
- 単方向データセットをセットアップする。
- データ プロバイダ、クライアント データセット、およびデータ ソースをセットアップする。
- DataGrid を接続コンポーネントに接続する。
- アプリケーションを実行する。
dbExpress 接続コンポーネントを追加するには:
- [ファイル|新規作成|VCL フォーム アプリケーション - Delphi]または[ファイル|新規作成|VCL フォーム アプリケーション - C++Builder]を選択します。
- [ツール パレット]の[dbExpress]ページから、[TSQLConnection]コンポーネントをフォームに配置します。
- フォーム上の TSQLConnection コンポーネントをクリックし、[オブジェクト インスペクタ]で、そのコンポーネントの[ConnectionName]プロパティを[IBConnection]に設定します。この設定により、以下が自動的に行われます。
- [Driver]プロパティが[Interbase]に設定されます。
- データベースに安全にアクセスできるように、[UserName](sysdba)と[Password](masterkey)が割り当てられます。
- InterBase データベース ファイル(.gdb ファイル)のパスを[Database]フィールドに指定する必要があります。
メモ: InterBase XE(RAD Studio 製品に付属)には、強度の高いユーザー パスワード暗号化が新たに導入されています。この変更のため、RAD Studio XE で InterBase の旧バージョンを使用すると、"Unrecognized database parameter block.(認識できないデータベース パラメータ ブロックです。)" というエラー メッセージが出力される場合があります。
InterBase XE では、強度の高いユーザー パスワード暗号化が付加された新しい admin.ib(ユーザー権限付与データベース)をデフォルトでインストールするため、この問題を解決するには、お使いの InterBase クライアントを InterBase XE のクライアントに更新します。また、(Interbase サーバーの停止中に)ファイル admin.ib を Interbase の旧バージョンから別のバージョンに変更することで、この問題を解決することもできます。IBConnection に関するその他の問題が発生した場合は、Interbase XE リリース ノートの「Migration Issues for InterBase XE(InterBase XE の移行に関わる問題)」セクションを参照してください。詳細は、InterBase ページでも参照してください。
InterBase XE では、強度の高いユーザー パスワード暗号化が付加された新しい admin.ib(ユーザー権限付与データベース)をデフォルトでインストールするため、この問題を解決するには、お使いの InterBase クライアントを InterBase XE のクライアントに更新します。また、(Interbase サーバーの停止中に)ファイル admin.ib を Interbase の旧バージョンから別のバージョンに変更することで、この問題を解決することもできます。IBConnection に関するその他の問題が発生した場合は、Interbase XE リリース ノートの「Migration Issues for InterBase XE(InterBase XE の移行に関わる問題)」セクションを参照してください。詳細は、InterBase ページでも参照してください。
単方向データセットをセットアップするには:
- [ツール パレット]の[dbExpress]ページから、[TSQLDataSet]コンポーネントをフォームに配置します。
- [オブジェクト インスペクタ]で、[SQLConnection]プロパティのドロップダウン リストを選択します。作成した TSQLConnection コンポーネントの名前を設定します。
- [CommandText]プロパティに、SQL コマンド(「Select * from Table_Name」など)を設定します。ログイン画面が表示されるので、masterkey パスワードを使用します。SQL コマンドについては、Select 文を[オブジェクト インスペクタ]に入力するか、[CommandText]の右にある省略記号([...])をクリックして、ユーザー独自のクエリ文を作成できる[CommandText の設定]を表示させることもできます。
ヒント: [CommandText の設定]の使用時に追加のヘルプ情報が必要であれば、[ヘルプ]ボタンをクリックしてください。
- [オブジェクト インスペクタ]で、[Active]プロパティを[True]に設定して、データセットを開きます。
プロバイダを追加するには:
- [ツール パレット]の[Data Access]ページから、[TDataSetProvider]コンポーネントをフォームに配置します。
- [オブジェクト インスペクタ]で、[DataSet]プロパティのドロップダウン リストを選択します。作成した TSQLConnection コンポーネントの名前を設定します。
クライアント データセットを追加するには:
- [ツール パレット]の[Data Access]ページから、[TClientDataSet]コンポーネントをフォームに配置します。
- [オブジェクト インスペクタ]で、[ProviderName]のドロップダウンを選択します。作成した TDataSetProvider コンポーネントの名前を設定します。
- [Active]プロパティを[True]に設定すると、データをアプリケーションに渡すことができます。データ ソースはクライアント データセットにデータ対応コントロールで接続します。データを表示し操作するためには、各データ対応コントロールをデータ ソース コンポーネントと関連付ける必要があります。同様に、フォーム上のデータ対応コントロールでデータセットのデータを表示し操作するには、すべてのデータセットをデータ ソース コンポーネントと関連付ける必要があります。
データ ソースを追加するには:
- [ツール パレット]の[Data Access]ページから、[TDataSource]コンポーネントをフォームに配置します。
- [オブジェクト インスペクタ]で、[DataSet]プロパティのドロップダウンを選択します。作成した TClientDataSet コンポーネントの名前を設定します。
DataGrid をデータセットに接続するには:
- [ツール パレット]の[Data Controls]ページから、[TDBGrid]コンポーネントをフォームに配置します。
- [オブジェクト インスペクタ]で、[DataSource]プロパティのドロップダウンを選択します。データ ソースに、作成した TDataSource コンポーネントの名前を設定します。
- [実行|実行] を選択します。パスワードの入力画面が表示されます。「masterkey」と入力します。無効なパスワードを入力するか、パスワードを入力しなかった場合、デバッガが例外を送出します。アプリケーションはコンパイルされ、DBGrid のある VCL フォームが表示されます。
これらのさまざまなコンポーネント間の接続を次の図に示します。