次の方法で共有


CDaoFieldInfo 構造体

CDaoFieldInfo の構造はデータ アクセス オブジェクト (DAO) に対して定義されているフィールド オブジェクトに関する情報が含まれています。

struct CDaoFieldInfo
{
   CString m_strName;           // Primary
   short m_nType;               // Primary
   long m_lSize;                // Primary
   long m_lAttributes;          // Primary
   short m_nOrdinalPosition;    // Secondary
   BOOL m_bRequired;            // Secondary
   BOOL m_bAllowZeroLength;     // Secondary
   long m_lCollatingOrder;      // Secondary
   CString m_strForeignName;    // Secondary
   CString m_strSourceField;    // Secondary
   CString m_strSourceTable;    // Secondary
   CString m_strValidationRule; // All
   CString m_strValidationText; // All
   CString m_strDefaultValue;   // All
};

パラメーター

  • m_strName
    一意のフィールド オブジェクトを指定します。詳細については、 DAO ヘルプ トピック 「Name プロパティ」を参照してください。

  • m_nType
    フィールドのデータ型を示す値。詳細については、 DAO ヘルプ トピック 「型のプロパティ」を参照してください。このプロパティの値は、次のいずれかになります。:

    • dbBoolean い/ TRUEと同様にFALSE

    • dbByte バイト数]

    • 短い dbInteger

    • 長のdbLong

    • dbCurrency の通貨; MFC クラス COleCurrencyを参照してください。

    • dbSingle のシングル

    • dbDouble の Double

    • dbDate の日付/時刻; MFC クラス COleDateTimeを参照してください。

    • dbText のテキスト; MFC クラス CStringを参照してください。

    • dbLongBinary の長いバイナリ (OLE オブジェクト); CByteArray が豊富、使いやすく、クラス CLongBinary の代わりに MFC クラス CByteArray を使用する場合があります。

    • dbMemo のメモ; MFC クラス CStringを参照してください。

    • dbGUID リモート プロシージャ呼び出しで使用されるグローバル一意識別子と汎用一意識別子。詳細については、 DAO ヘルプ トピック 「型のプロパティ」を参照してください。

    [!メモ]

    バイナリ データの文字列型を使用しないでください。これにより、データは大きくするオーバーヘッドと、予期しない変換によって Unicode/ANSI 変換のレイヤーを、です。

  • m_lSize
    最大サイズを、テキストまたは数値を含むフィールド オブジェクトのテキストまたは固定サイズを含む DAO のフィールド オブジェクトのバイトで、示す値。詳細については、 DAO ヘルプ トピック 「サイズ プロパティ」を参照してください。サイズは次の値のいずれか 1 つがです:

    種類

    サイズ (バイト)

    Description

    dbBoolean

    1 バイト

    Yes/No (true/false と同じ)

    dbByte

    1

    Byte

    dbInteger

    2

    Integer (整数型)

    dbLong

    4

    Long

    dbCurrency

    8

    通貨 (COleCurrency

    dbSingle

    4

    Single

    dbDouble

    8

    Double (倍精度浮動小数点型)

    dbDate

    8

    日付/時刻 (COleDateTime

    dbText

    1 - 255

    テキスト (CString

    dbLongBinary

    0

    長いバイナリ (OLE オブジェクト; CByteArray; CLongBinaryの代わりに使用)

    dbMemo

    0

    メモ (CString

    dbGUID

    16

    リモート プロシージャ呼び出しで使用されるグローバル一意識別子と汎用一意識別子。

  • m_lAttributes
    tabledef、レコードセット、クエリ定義、またはインデックス オブジェクトに含まれるフィールド オブジェクトの特性を指定します。返される値は、 C++ で作成されたこれらの定数の合計になります。ビットごとの OR (**|**演算子):

    • dbFixedField フィールドは固定サイズ (数値フィールドの既定値)。

    • dbVariableField フィールド サイズが変化します (テキスト フィールドのみ)。

    • dbAutoIncrField は変更できない一意の長整数に新しいレコードのフィールドの値は自動的にインクリメントします。Microsoft Jet データベース テーブルの場合にのみサポートされます。

    • dbUpdatableField は、フィールドの値を変更できます。

    • dbDescending は降順の 18 (Z ~ A または 100 ~ 0)の順で並べ替えられますフィールド (インデックス オブジェクトのフィールド コレクションのフィールド オブジェクトだけ適用します; MFC では、インデックス オブジェクトは、テーブル定義オブジェクトに格納されます)。この定数を省略すると、フィールドが昇順 (A ~ Z または 0 ~ 100)順序 (既定)に並べ替えられます。

    このプロパティの設定を確認すると、特定の属性をテストするのに C++ ビットごとの AND 演算子 (&)を使用できます。複数の属性を設定すると、適切な定数を組み合わせることで、それらをビットごとの OR (|) 演算子を使用して、複数のオプションを指定できます。詳細については、 DAO ヘルプ トピック 「属性プロパティ」を参照してください。

  • m_nOrdinalPosition
    は、フィールドとなる数値順序を指定する値は、他のフィールドに関連して表示する DAO のフィールド オブジェクトによって表される。CDaoTableDef::CreateFieldでこのプロパティを設定できます。詳細については、 DAO ヘルプ トピック 「OrdinalPosition プロパティ」を参照してください。

  • m_bRequired
    DAO のフィールド オブジェクトが以外の値を必要とするかどうかを示します。このプロパティが TRUEの場合、フィールドは NULL 値を許可しません。必要に応じて FALSEに設定され、フィールドは AllowZeroLength と ValidationRule のプロパティ設定で指定された条件を満たす null 値、または値を含めることができます。詳細については、 DAO ヘルプ トピック 「必須プロパティ」を参照してください。CDaoTableDef::CreateFieldの tabledef でこのプロパティを設定できます。

  • m_bAllowZeroLength
    空の文字列 ("")がテキストまたはメモのデータ型を持つ DAO のフィールド オブジェクトの有効な値であるかどうかを示します。このプロパティが TRUE場合は、空の文字列は有効な値です。FALSE フィールドに値を設定するには、空の文字列を使用できないことを確認するには、このプロパティを設定できます。詳細については、 DAO ヘルプ トピック 「AllowZeroLength プロパティ」を参照してください。CDaoTableDef::CreateFieldの tabledef でこのプロパティを設定できます。

  • m_lCollatingOrder
    文字列比較と並べ替えのテキストの並べ替え順序のシーケンスを指定します。詳細については、 " " を 「DAO ヘルプのデータ アクセス用の Windows レジストリ設定を」カスタマイズしてください。有効な値の一覧については CDaoDatabaseInfo の構造体の m_lCollatingOrder のメンバーを返したり、計画が。CDaoTableDef::CreateFieldの tabledef でこのプロパティを設定できます。

  • m_strForeignName
    、リレーションシップにプライマリ テーブルのフィールドに対応する外部キー テーブルで、 DAO のフィールド オブジェクトの名前を指定する値。詳細については、 DAO ヘルプ トピック 「ForeignName プロパティ」を参照してください。

  • m_strSourceField
    tabledef、レコードセット、またはクエリ定義オブジェクトに含まれる DAO のフィールド オブジェクトのデータの元のソースのフィールドの名前を示します。このプロパティは、フィールド オブジェクトに関連付けられている元のフィールド名を示します。たとえば、名前が基になるテーブルのフィールドの名前に関係のあるクエリ フィールドのデータの元のソースを確認するには、このプロパティを使用できます。詳細については、 「SourceField の DAO ヘルプ SourceTable のプロパティ」を参照してください。CDaoTableDef::CreateFieldの tabledef でこのプロパティを設定できます。

  • m_strSourceTable
    tabledef、レコードセット、またはクエリ定義オブジェクトに含まれる DAO のフィールド オブジェクトのデータの元のソースであるテーブルの名前を示します。このプロパティは、フィールド オブジェクトに関連付けられている元のテーブルの名前を示します。たとえば、名前が基になるテーブルのフィールドの名前に関係のあるクエリ フィールドのデータの元のソースを確認するには、このプロパティを使用できます。詳細については、 「SourceField の DAO ヘルプ SourceTable のプロパティ」を参照してください。CDaoTableDef::CreateFieldの tabledef でこのプロパティを設定できます。

  • m_strValidationRule
    テーブルに変更または追加されるたびにフィールドにデータを検証する値。詳細については、 DAO ヘルプ トピック 「ValidationRule プロパティ」を参照してください。CDaoTableDef::CreateFieldの tabledef でこのプロパティを設定できます。

    tabledefs に関する関連情報については、 CDaoTableDefInfo の構造体の m_strValidationRule のメンバーを参照してください。

  • m_strValidationText
    DAO オブジェクトのフィールドの値が ValidationRule のプロパティ設定で指定された検証規則を満たすアプリケーションが表示するメッセージのテキストを指定する値。詳細については、 DAO ヘルプ トピック 「ValidationText プロパティ」を参照してください。CDaoTableDef::CreateFieldの tabledef でこのプロパティを設定できます。

  • m_strDefaultValue
    DAO オブジェクトのフィールドの既定値。新しいレコードが作成されると、 DefaultValue のプロパティ設定がフィールド値として自動的に入力されます。詳細については、 DAO ヘルプ トピック 「DefaultValue プロパティ」を参照してください。CDaoTableDef::CreateFieldの tabledef でこのプロパティを設定できます。

解説

プライマリ、セカンダリへの参照は、上のすべての情報をクラス CDaoTableDefCDaoQueryDefCDaoRecordsetGetFieldInfo のメンバー関数によってどのように戻るかを示します。

フィールド オブジェクトは、 MFC クラスでは表示されません。代わりに、次のクラスの MFC オブジェクトの基になる DAO のオブジェクトはフィールド オブジェクトのコレクションを含んでいます: CDaoTableDefCDaoRecordsetCDaoQueryDef。フィールドの情報での項目にアクセスするこれらのクラスの提供のメンバー関数または、 CDaoFieldInfo のオブジェクトとコンテナー オブジェクトの GetFieldInfo のメンバー関数を呼び出すことにより、一度にアクセスできます。

オブジェクト プロパティを調べるための使用のほかに、 tabledef で新しいフィールドを作成するための入力パラメーターの構築に CDaoFieldInfo を使用できます。簡単なオプションは、このタスクに使用できますが、細かく制御するには、 CDaoFieldInfo パラメーターを受け取る CDaoTableDef::CreateField のバージョンを使用できます。

(フィールドを含むクラス)の GetFieldInfo のメンバー関数によって取得された情報は CDaoFieldInfo の構造体に格納されます。フィールド コレクションにフィールド オブジェクトを格納するコンテナー オブジェクトの GetFieldInfo のメンバー関数を呼び出します。CDaoFieldInfo は、デバッグ ビルドの Dump のメンバー関数を定義します。CDaoFieldInfo のオブジェクトの内容をダンプするために Dump を使用できます。

必要条件

Header: afxdao.h

参照

関連項目

CDaoTableDef::GetFieldInfo

CDaoRecordset::GetFieldInfo

CDaoQueryDef::GetFieldInfo

その他の技術情報

構造体、スタイル、コールバック関数とメッセージ マップ