次の方法で共有


CDaoRelationInfo 構造体

CDaoRelationInfo の構造は CDaoDatabase オブジェクトに 2 テーブルのフィールド間で定義されている関係に関する情報が含まれます。

struct CDaoRelationInfo
{
   CDaoRelationInfo( );                    // Constructor
   CString m_strName;                      // Primary
   CString m_strTable;                     // Primary
   CString m_strForeignTable;              // Primary
   long m_lAttributes;                     // Secondary
   CDaoRelationFieldInfo* m_pFieldInfos;   // Secondary
   short m_nFields;                        // Secondary
   // Below the // Implementation comment:
   // Destructor, not otherwise documented
};

パラメーター

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

  • m_strTable
    リレーションシップにプライマリ テーブルを付けます。

  • m_strForeignTable
    リレーションシップの外部キー テーブルを付けます。外部キー テーブルが外部キーを格納するために使用されるテーブルです。通常、参照整合性を作成または強制的に外部キー テーブルを使用します。外部キー テーブルは多くのに一対多リレーションシップの側です。外部キー テーブルの例では、米国状態のコードやカナダの領域または顧客注文含むテーブルが含まれます。

  • m_lAttributes
    リレーションシップの種類に関する次の値を含める情報。このメンバーの値は、次のいずれかになります。:

    • dbRelationUnique の関係は 1 対 1 です。

    • dbRelationDontEnforce の関係は適用されません (参照整合性なし)。

    • dbRelationInherited の関係は 2 個のアタッチ テーブルを含むデータベース以外にあります。

    • dbRelationLeft は、関係の左結合です。左外部結合は、 2 番目 (右)テーブルのレコードに一致する値がない場合でも、 2 テーブルの最初のレコードをすべて (左側)が含まれています。

    • dbRelationRight はリレーションシップ右の結合です。右外部結合は最初の (左側)のテーブルのレコードに一致する値がない場合でも、 2 テーブルの 2 番目からすべてのレコード (右)が含まれています。

    • dbRelationUpdateCascade の更新はたどって適用されます。

    • dbRelationDeleteCascade の削除はたどって適用されます。

  • m_pFieldInfos
    CDaoRelationFieldInfo の構造体の配列へのポインター。配列は、関係の各フィールドに関する 1 種類のオブジェクトが含まれます。m_nFields のデータ メンバーは配列の要素数を示します。

  • m_nFields
    CDaoRelationFieldInfo の数は m_pFieldInfos のデータ メンバーにオブジェクト。

解説

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

リレーションシップ オブジェクトは、 MFC クラスでは表示されません。代わりに、 CDaoDatabase のクラスの MFC オブジェクトの基になる DAO のオブジェクトは、リレーションシップ オブジェクトのコレクションを保持します: CDaoDatabase は、関係の情報での項目にアクセスするメンバー関数を指定します CDaoRelationInfo またはオブジェクトに格納されているデータベース オブジェクトの GetRelationInfo のメンバー関数を呼び出すことにより、一度にアクセスできます。

CDaoDatabase::GetRelationInfo のメンバー関数によって取得された情報は CDaoRelationInfo の構造体に格納されます。CDaoRelationInfo は、デバッグ ビルドの Dump のメンバー関数を定義します。CDaoRelationInfo のオブジェクトの内容をダンプするために Dump を使用できます。

必要条件

Header: afxdao.h

参照

関連項目

CDaoRelationFieldInfo 構造体