Data.DB.TField
Delphi
TField = class(TComponent)
C++
class PASCALIMPLEMENTATION TField : public System::Classes::TComponent
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | Data.DB.pas Data.DB.hpp |
Data.DB | Data.DB |
説明
TField は、すべてのフィールド コンポーネントの共通の祖先です。
TField は、すべてのフィールド コンポーネントに共通する基本的な動作をカプセル化しています。 次の用途に使用されるプロパティ、イベント、メソッドなどを定義しています:
- データセット内のフィールドの値の変更
- あるデータ型から別のものへの、フィールドの値の変換
- フィールドにユーザーが入力してデータの検証
- フィールドのデータが、表示時または編集時にどのように表示されるかの定義
- データセットの OnCalcFields イベント内で記述されたコードでの、フィールドの値の計算
- 他のデータセットからのフィールド値の検索
TField のインスタンスは作成しないでください。 TField の下位オブジェクトは、データセットが有効になるたびに、自動的に作成されます。これらの下位オブジェクトは、動的にも(デフォルト)永続的にもすることができます。動的フィールド コンポーネントは、データセットが開いたときに、基礎としているメタデータ内の列を反映します。永続フィールド コンポーネントは、設計時にフィールド エディタを使用して作成されるもので、データセット内のフィールド、それらのプロパティ、それらの順番などを指定します。
永続化フィールド コンポーネントを作成すると、たとえ、基になるデータベースの物理構造に変更があったとしても、アプリケーションの実行では、毎回同じ列が同じ順番で表示され、使用できることが保証されます。永続化フィールド コンポーネントがベースとしている列が、削除または変更された場合、IDE は、存在しない列や該当しないデータのためにデータセットを開くのではなく、例外を生成します。その場合、存在しないフィールドに対応するフィールド コンポーネントは、フィールド エディタ を使用して削除してください。
TField オブジェクトの値の読み込み
DataType プロパティを使用すると、TField オブジェクトがどの値の型かを判別することができます。
As
が前についたプロパティのいずれかを使用すると、適切な型を使用した TField オブジェクトの値を取得することができます:
- AsAnsiString
- AsBCD
- AsBoolean
- AsBytes
- AsCurrency
- AsDateTime
- AsExtended
- AsFloat
- AsInteger
- AsLargeInt
- AsLongWord
- AsSingle
- AsSQLTimeStamp
- AsSQLTimeStampOffset
- AsString
- AsVariant
- AsWideString
TField オブジェクトの型に合っていないプロパティを読み込んだ場合、例外が発生します。
TField オブジェクトが null 値を持っている場合、IsNull は True
となります。null 値を持つ TField オブジェクトの値を読み込んだ際、それに相当する型のデフォルト値を取得します。たとえば、AsInteger は null 値に対しては 0 となります。
サブクラス
データセット内のフィールドは常に、次の TField 下位クラスのいずれかとして処理されます:
下位クラス | 説明 |
---|---|
TADTField オブジェクトは,データセット内の ADT(抽象データ型)項目を表します。 | |
TDateField は、データセット内の日付フィールドを表します。 | |
TReferenceField は,データセット内の REF 項目を表します。 | |
TAggregate フィールドは、クライアント データセットに保持された集計を表します。 | |
TDateTimeField は、データセット内の日時フィールドを表します。 | |
データセット内の符号付き 16 ビット整数フィールドを表します。 | |
TArrayField は,データセット内の配列項目を表します。 | |
TFloatField は、データセット内の浮動小数点値を格納しているフィールドを表します。 | |
TSQLTimeStampField は,dbExpress データセット内の日付時刻型項目を表します。 | |
TAutoIncField は、データセット内において自動インクリメントされる、永続フィールド オブジェクトです。 | |
TFMTBCDField は,データセット内の 2 進化 10 進数(BCD)項目を表します。 | |
TStringField は,データセット内の文字列項目を表します。 | |
TBCDField は、データセット内の BCD(2進化10進数)を表します。 | |
TGraphicField はデータセット内のグラフィック型項目を表します。 | |
TTimeField は,データセット内の時刻項目を表します。 | |
TBinaryField は、データセット内の型のないバイナリ フィールドを表します。 | |
TGuidField は,データセットの GUID 項目を表します。 | |
TVarBytesField は,データセット内の型なし可変長バイナリ項目を表します。 | |
TBlobField は、BLOB(Binary Large Object)への参照を保有する、データセット内の 1 つのフィールドを表します。 | |
TIDispatchField は,データセットの IDispatch 項目を表します。 | |
TVariantField は,データセット内のバリアント項目を表します。 | |
TBooleanField は、Boolean 値を保持するフィールドを表します。 | |
データセット内の符号付き 32 ビット整数フィールドを表します。 | |
TWideStringField は、データセット内の長い文字列フィールドを表します。 | |
TBytesField は、データセット内のバイト フィールドを表します。 | |
TInterfaceField は,データセットのインターフェース項目を表します。 | |
データセット内の符号なし 16 ビット整数フィールドを表します。 | |
TCurrencyField は、データセット内の通貨値を格納しているフィールドを表します。 | |
TLargeintField は,データセット内の Largeint 項目を表します。 | |
TDataSetField は,ネストされたデータセットへのアクセスを提供します。 | |
TMemoField は、データセット内のメモ フィールドを表します。 |