CDaoFieldInfo構造は次の形式をが:
cDaoFieldInfo 構造体{特価;CString の m_strName;//プライマリ短い m_nType;//プライマリ長い m_lSize;//プライマリ長い m_lAttributes;//プライマリ短い m_nOrdinalPosition;//セカンダリBOOL m_bRequired;//セカンダリBOOL m_bAllowZeroLength;//セカンダリ長い m_lCollatingOrder;//セカンダリCString の m_strForeignName;//セカンダリCString の m_strSourceField;//セカンダリCString の m_strSourceTable;//セカンダリCString の m_strValidationRule;//すべてCString の m_strValidationText;//すべてCString の m_strDefaultValue;//すべて}(&N)
CDaoFieldInfo構造には、データ アクセス オブジェクト (DAO) を定義するフィールド オブジェクトに関する情報が含まれています。どのように情報CDaoTableDef CDaoQueryDef、 CDaoRecordsetクラスでのGetFieldInfoメンバー関数によって返されるプライマリ、セカンダリ、上記のすべての参照を示す。
フィールド オブジェクトは、MFC クラスでは表示されません。代わりに、DAO オブジェクトの MFC オブジェクトは次のクラスの基になるフィールド オブジェクトのコレクションが含まれている: CDaoTableDef CDaoRecordset、 CDaoQueryDef。これらのクラスのフィールドについて、いくつかの個々 の項目にアクセスするメンバー関数を提供またはそれらすべてを一度にCDaoFieldInfoオブジェクトを含んでいるオブジェクトのGetFieldInfoメンバー関数を呼び出すことによってアクセスできます。
オブジェクトのプロパティを調べるため、以外にも、あなたもCDaoFieldInfoテーブルに新しいフィールドを作成するため、入力パラメーターを作成するのに使用できます。単純なオプションこのタスクの利用がより細かく制御したい場合は、 CDaoFieldInfoパラメーターを受け取るcdaotabledef::createfieldのバージョンを使用することができます。
メンバー
m_strName
フィールド オブジェクトの一意名します。詳細については、DAO ヘルプの「名前プロパティ」のトピックを参照してください。
m_nType
フィールドのデータ型を示す値。詳細については、DAO ヘルプの「Type プロパティ」のトピックを参照してください。このプロパティの値は、次のいずれかをすることができます。:
注特価;文字列データ型のバイナリ データを使用しないでください。これは、オーバーヘッドが増大し、予期しない変換結果が Unicode 変換層、通過するデータが発生します。(&N)。
m_lSize
テキストまたは固定サイズのテキストまたは数値の値を含むフィールド オブジェクトが含まれている DAO フィールド オブジェクトのバイト単位の最大サイズを示す値。詳細については、DAO ヘルプの「サイズ プロパティ」のトピックを参照してください。サイズは、次の値のいずれかをすることができます。:
| タイプ | サイズ (バイト) | 説明 |
| dbBoolean | 1 バイト | はい/いいえ (True または False と同じ) |
| dbByte | 1 | バイト |
| dbInteger | 2 | 整数 |
| dbLong | 4 | 長い |
| dbCurrency | 8 | 通貨 (COleCurrency) |
| dbSingle | 4 | 1 つ |
| dbDouble | 8 | ダブル |
| dbDate | 8 | 日付と時刻 (COleDateTime) |
| dbText | 1-255 | テキスト (CString) |
| dbLongBinary | 0 | ロング バイナリ (OLE オブジェクト;CByteArray;CLongBinaryの代わりに使用) |
| dbMemo | 0 | メモ (CString) |
| dbGUID | 16 | グローバルに一意な識別子普遍的一意のリモート プロシージャ コールで使用される識別子。 |
m_lAttributes
テーブル定義、レコード セット、クエリ定義、またはインデックス オブジェクトが含まれているフィールド オブジェクトの特性を指定します。返される値は合計のこれらの定数は、C++ のビットごとの OR (|) 演算子で作成することができます。:
このプロパティの設定をチェックするとき、あなた、C++ 演算子を使用することができます- と、特定の属性をテストする演算子 (amp;)。複数の属性を設定する場合、それらを結合するには、ビットごとの OR (&|) 演算子を適切な定数を組み合わせることによってすることができます。詳細については、DAO ヘルプの「属性プロパティ」のトピックを参照してください。
m_nOrdinalPosition
他のフィールドを基準に表示する DAO フィールド オブジェクトによって表されるフィールド数値順序を指定する値。Cdaotabledef::createfieldをこのプロパティを設定することができます。詳細については、DAO ヘルプの「OrdinalPosition プロパティ」のトピックを参照してください。
m_bRequired
DAO フィールド オブジェクトが Null 以外の値を必要とするかどうかを示します。このプロパティがTRUEの場合は、フィールド、Null 値を許可しません。FALSEに設定されて、必要に応じて、フィールド Null 値だけでなく、AllowZeroLength、ValidationRule プロパティの設定で指定された条件を満たす値を含めることができます。詳細については、DAO ヘルプの「必要なプロパティ」トピックを参照してください。このcdaotabledef::createfieldをテーブル定義のプロパティを設定することができます。
m_bAllowZeroLength
示す空の文字列かどうか (「」) テキストまたはメモのデータ型を持つ DAO フィールド オブジェクトの有効な値です。このプロパティがTRUEの場合は、空の文字列に有効な値です。このプロパティは、フィールドの値を設定するには、空の文字列を使用できないことを確認するにはFALSEに設定できます。詳細については、DAO ヘルプの「AllowZeroLength プロパティ」のトピックを参照してください。このcdaotabledef::createfieldをテーブル定義のプロパティを設定することができます。
m_lCollatingOrder
テキスト文字列の比較または並べ替えを並べ替え順序のシーケンスを指定します。詳細については、「カスタマイズする Windows レジストリ設定のデータ アクセス DAO ヘルプ トピックを参照してください。返される値の一覧については、 CDaoDatabaseInfo構造のm_lCollatingOrderメンバーを参照してください。このcdaotabledef::createfieldをテーブル定義のプロパティを設定することができます。
m_strForeignName
関係で DAO フィールド オブジェクト、主テーブルのフィールドに対応するテーブルの名前を指定する値。詳細については、DAO ヘルプの「ForeignName プロパティ」のトピックを参照してください。
m_strSourceField
元のソース データは、テーブル定義、レコード セット、またはクエリ定義オブジェクトに含まれる DAO フィールド オブジェクトのフィールドの名前を示します。このプロパティは、フィールド オブジェクトに関連付けられた元のフィールド名を示します。たとえば、このプロパティを使用して名前が基になるテーブルのフィールドの名前に関連クエリ ・ フィールド内のデータの元のソースを決定することができます。詳細については、DAO のヘルプでトピック「SourceField、SourceTable プロパティ」を参照してください。このcdaotabledef::createfieldをテーブル定義のプロパティを設定することができます。
m_strSourceTable
テーブル定義、レコード セット、またはクエリ定義オブジェクトが含まれている DAO フィールド オブジェクトのデータの元のソース テーブルの名前を示します。このプロパティは、フィールド オブジェクトに関連付けられている元のテーブル名を示します。たとえば、このプロパティを使用して名前が基になるテーブルのフィールドの名前に関連クエリ ・ フィールド内のデータの元のソースを決定することができます。詳細については、DAO のヘルプでトピック「SourceField、SourceTable プロパティ」を参照してください。このcdaotabledef::createfieldをテーブル定義のプロパティを設定することができます。
m_strValidationRule
変更または、テーブルに追加するときは、フィールド内のデータを検証する値。詳細については、DAO ヘルプの「ValidationRule プロパティ」のトピックを参照してください。このcdaotabledef::createfieldをテーブル定義のプロパティを設定することができます。
テーブル定義の関連情報をCDaoTableDefInfo構造体のm_strValidationRuleメンバーを参照してください。
m_strValidationText
DAO フィールド オブジェクトの値が ValidationRule プロパティの設定で指定された入力規則を満たさない場合は、アプリケーションが表示されます、メッセージのテキストを指定する値。詳細については、DAO ヘルプの「ValidationText プロパティ」のトピックを参照してください。このcdaotabledef::createfieldをテーブル定義のプロパティを設定することができます。
m_strDefaultValue
DAO フィールド オブジェクトの既定値。新しいレコードが作成されると、DefaultValue プロパティの設定値として、フィールドに自動的に入力されます。詳細については、DAO ヘルプの「DefaultValue プロパティ」のトピックを参照してください。このcdaotabledef::createfieldをテーブル定義のプロパティを設定することができます。
コメント
(フィールドを含むクラス) のGetFieldInfoメンバー関数によって取得された情報は、 CDaoFieldInfo構造で格納されます。そのフィールド コレクションのフィールド オブジェクトが格納されますを含むオブジェクトのGetFieldInfoメンバー関数を呼び出します。CDaoFieldInfoはデバッグ ビルドでは、ダンプのメンバー関数も定義します。CDaoFieldInfoオブジェクトの内容をダンプするのにダンプを使用することができます。
これと他の MFC DAO 情報構造体の使用方法については、参照してください DAO コレクション: DAO オブジェクトの情報の取得でVisual の C++ プログラマのガイド。
参照特価;CDaoTableDef::GetFieldInfo、 CDaoRecordset::GetFieldInfo、 CDaoQueryDef::GetFieldInfo(&N)