Access のデータ 用のシンプルな VCL アプリケーションを構築
Embarcadero RAD Studio は、Delphi および C++Builder アプリケーション用の開発環境を提供します。CData ODBC Driver for Access を使用すると、RAD Studio 内からリアルタイムAccess のデータにアクセスでき、データをテーブル、ビュー、ストアドプロシージャとして抽象化してAccess のデータの取得および更新が可能です。この記事では、Access に接続し、フォームデザイナを使用してシンプルな VCL アプリケーションを作成する方法を説明します。
Access のデータ への接続を作成
まだ設定していない場合は、ODBC DSN(データソース名)で接続プロパティを指定します。これはドライバーインストールの最後のステップです。Microsoft ODBC データソースアドミニストレーターを使用して、ODBC DSN を作成・設定できます。
Access接続の設定方法
ローカルファイルへの接続設定
ローカル環境からAccess への接続は非常にシンプルです。ConnectionType をLocal に設定することで、CRUD 操作(SELECT、INSERT、UPDATE、DELETE)をすべて実行できます。接続にはDataSource プロパティに以下のようなAcces sデータベースファイルのフルパスを指定します。
C:\Users\Public\Documents\MyDatabase.accdb
詳細な接続手順については、ヘルプドキュメントの「はじめに」セクションをご参照ください。
クラウドストレージ上のAccess ファイルへの接続設定
各種クラウドストレージに保存されているAccess ファイルへのアクセスにも対応しています。ただし、クラウド上のファイルに対するデータ操作は、INSERT、UPDATE、DELETE に制限されますのでご注意ください。
S3、Google Driver、OneDrive など、各種クラウドストレージ内のAccess ファイルへの接続方法はこちらの記事をご確認ください。
クラウド上のファイルを更新したい場合は、以下の手順で実施いただけます。
- 対応するCData ドライバーを利用し、クラウドサービスからAccess ファイルをダウンロード
- Access ドライバーを使用して、ローカル環境でファイルを編集
- クラウドサービス用ドライバーのストアドプロシージャを使用して、更新ファイルをアップロード
具体例として、SharePoint 上のファイルを更新する場合の手順をご紹介します。
- CData SharePoint ドライバーのDownloadDocument プロシージャを使用してファイルを取得
- CData Access ドライバーでファイルの更新を実施
- SharePoint ドライバーのUploadDocument プロシージャで更新内容を反映
DataSource 接続プロパティの設定について補足いたします。接続先のクラウドストレージを識別するための一意の接頭辞を指定し、続けて目的のファイルパスまたはフォルダパスを記述します。フォルダを指定した場合は1ファイルが1テーブルとして、単一ファイルの場合は単一テーブルとして扱われます。
次に、以下の手順で Data Explorer を使用してAccess のデータへの FireDAC 接続を作成します。
- 新しい VCL フォームアプリケーションで、Data Explorer の FireDAC ノードを展開します。
- Data Explorer で ODBC Data Source ノードを右クリックします。
- [新しい接続の追加] をクリックします。
- 接続の名前を入力します。
- 表示される FireDAC Connection Editor で、DataSource プロパティに Access 用 ODBC DSN の名前を設定します。
Access のデータ に接続する VCL アプリケーションを作成
以下の手順に従って、クエリ結果をグリッドに表示するシンプルな VCL アプリケーションからAccess のデータへのクエリ実行を開始します。
-
TFDConnection コンポーネントをフォームにドロップし、以下のプロパティを設定します。
- ConnectionDefName:Access のデータへの FireDAC 接続を選択します。
- Connected: メニューから True を選択し、表示されるダイアログで資格情報を入力します。
-
TFDQuery コンポーネントをフォームにドロップし、以下のプロパティを設定します。
- Connection: まだ指定されていない場合は、このプロパティを TFDConnection コンポーネントに設定します。
SQL: SQL プロパティのボタンをクリックしてクエリを入力します。例:
SELECT Orders.Freight, Customers.ContactName FROM Customers INNER JOIN Orders ON Customers.CustomerId=Orders.CustomerId
- Active: このプロパティを true に設定します。
TDataSource コンポーネントをフォームにドロップし、以下のプロパティを設定します。
- DataSet: このプロパティのメニューで、TFDQuery コンポーネントの名前を選択します。
-
TDBGrid コントロールをフォームにドロップし、以下のプロパティを設定します。
- DataSource: TDataSource の名前を選択します。
- TFDGUIxWaitCursor をフォームにドロップします。これはランタイムエラーを回避するために必要です。
これで、TFDQuery オブジェクトに設定された SQL クエリの結果を表示する実行可能なアプリケーションが完成しました。
関連記事
RAD Studio、Delphi、C++ Builder で CData ODBC ドライバを使用するその他の記事は以下をご覧ください。