Data.DB.TBCDField
Delphi
TBCDField = class(TNumericField)
C++
class PASCALIMPLEMENTATION TBCDField : public TNumericField
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | Data.DB.pas Data.DB.hpp |
Data.DB | Data.DB |
説明
TBCDField は、データセット内の BCD(2進化10進数)を表します。
TBCDField は、2進化10進数(BCD)フィールドに共通する、基本的な動作をカプセル化しています。 BCD 値は、浮動小数点数よりも、より高い精度と正確さを提供します。 BCD フィールドはよく、通貨値を格納および操作するために使用されます。
The IDE uses two different field types for representing BCD fields: TBCDField and TFMTBCDField. TBCDField は currency (Delphi) または System::Currency (C++) 型を、BCD 値の操作に使用します。 本来の BCD 型を使用するより、値の格納および操作は高速になりますが、サポートできる BCD 値の精度は、小数点以下 4 桁、有効桁数 20 までに制限されます。
TBCDField は、データを、データベース テーブルからフェッチする際には、BCD値から currency 値に変換し、データを送信する際には、currency 値から2進化10進数(BCD)値に変換します。 基礎としているデータベース テーブルに、より大きな精度が必要な値が含まれている場合、TBCDField は例外を発生させます。 アプリケーションに、小数点以下 4 桁、有効桁数 20 よりも大きい BCD 値が必要な場合、代わりに TFMTBCDField を使用します。 TFMTBCDField は2進化10進数型(TBCD)の精度を持つ真の BCD ですが、パフォーマンスがやや低下します。
設計時、フィールド エディタを使用して、BCD フィールドに対して永続フィールド コンポーネントを作成すると、実行時に名前でそれにアクセスすることができます。 動的フィールド コンポーネントを使用する場合は、データセットの Fields プロパティか FieldByName メソッドを使って TBCDField インスタンスにアクセスできます。