■データベースコンポーネントの設定方法
●学習内容
ここでは、アプリケーションで使用するコンポーネントの設定方法を説明します。難しい設定はないのでアプリケーションを作成する時の参考にしてください。
●データアクセスコンポーネント
データアクセスコンポーネントには、データベースをデータセットとして扱うためのTTable,TQuery、これらをデータコントロールコンポーネント結びつけるTDataSourceコンポーネントなどが用意されています。
★TDataSourceコンポーネント
DataSourceコンポーネントは、TQuery、TTableコンポーネントとデータコントロールコンポーネントを結びつける役割をしています。
▲設定方法
T.データコントロールと結びつけるデータセットをDataSetプロパティに指定する。
★TQueryコンポーネント
Queryコンポーネントは、SQL文でデータベースにアクセスするためのデータセットコンポーネントです。
▲設定方法
T.DatabaseNameプロパティにエリアスを指定する。
U.SQLプロパティに実行するSQLを指定する。
V.OpenメソッドによりSQL文を実行する。
★TUpdateSQLコンポーネント
UpdateSQLコンポーネントは、読み出し専用結果セットの更新に使います。TQuery,TUpdateSQLとキャッシュアップデートがワンセットだと思ってください。
▲設定方法
T.データセットのCachedUpdateプロパティをTrueにする。
U.キャッシュアップデートを利用するデータセットコンポーネントのUpdateObjectプロパティにTUpdateSQLコンポーネントを設定する。
V.TUpdateSQLコンポーネントをダブルクリックするか、右クリックから[UpdateSQLの設定(U)]を選択し、表示されるエディタを利用してSQL文を生成する。
●データコントロールコンポーネント
データコントロールコンポーネントは、TDataSourceコンポーネントに結びつけられたデータセットをDataSourceプロパティに指定する事により編集が可能になります。その関係のイメージを以下に示しておきます。
ここで示しているようにTDataSourceコンポーネントがデータセットとデータコントロールコンポーネントを結びつけています。しかし、データコントロールコンポーネントが直接データセットを利用する事は出来ません。
★TDBGridコンポーネント
TDBGridコンポーネントは、グリッドにデータベースのレコードを表示・編集し、一覧表に使われます。
▲設定方法
T.DataSourceプロパティに表示したデータのデータセットを指定する。
▲Columnsプロパティの列エディタ
項目コンポーネントでDisplayLabel(見出し)やVisible(可視)などを設定しなかった場合に列エディタを使って設定する事ができます。列エディタを利用するには、TDBGridをダブルクリックし、列エディタのツールバーで[すべての項目の追加]を選択します。
★TDBNavigatorコンポーネント
TDBNavigatorコンポーネントは、レコードのカーソルの移動やレコードの新規挿入、登録、削除、編集の取り消しなどの機能をボタンで操作する事ができます。
▲設定方法
T.DataSourceプロパティに表示したデータのデータセットを指定する。
★TDBEditコンポーネント
TDBEditコンポーネントは、データベース対応の1行編集コントロールです。
▲設定方法
T.DataSourceプロパティに編集したいデータセットを指定する
U.DataFieldプロパティに編集したいデータセットの項目を指定する。
★TDBMemoコンポーネント
TDBMemoコンポーネントは、複数の行のテキストを編集するためのデータベース対応編集コントロールです。
▲設定方法
T.DataSourceプロパティに編集したいデータセットを指定する。
U.DataFieldプロパティに編集したいデータセットの項目を指定する
★TDBLookupComboBoxコンポーネント
TDBLookupComboBoxコンポーネントは、データベース対応のコンボボックスですが、リストに表示する項目に別のデータセットの項目値を表示できます。ユーザが入力ボックスで値を入力する事は出来ません。
▲設定方法
T.編集したいデータセットをDataSourceプロパティに指定する。
U.編集したいデータセットの項目をDataFieldプロパティに指定する。
V.参照するデータセットをListSourceプロパティに設定する。
W.リストボックスに表示される項目をListFieldに指定する。複数の場合は、(;)で区切る。
X.DataFieldで指定した項目の値と一致するListSourceデータセットの項目(参照するテーブルのキー項目)をKeyFieldに指定する。