分享方式:


CDaoRelationInfo 結構

結構 CDaoRelationInfo 包含 CDaoDatabase 物件中兩個 資料表欄位之間定義關聯的相關資訊。

語法

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 說明中的「名稱屬性」主題。

m_strTable
將關聯中的主要資料表命名為 。

m_strForeignTable
將關聯中的外部資料表命名為 。 外資料表是用來包含外鍵的資料表。 一般而言,您會使用外表來建立或強制執行參考完整性。 外表通常位於一對多關聯性的多端。 外國資料表的範例包括包含美國州或加拿大省或客戶訂單代碼的資料表。

m_lAttributes
包含關聯類型的相關資訊。 這個成員的值可以是下列任一項:

  • dbRelationUnique 關聯性是一對一。

  • dbRelationDontEnforce 不會強制執行關聯性(沒有參考完整性)。

  • dbRelationInherited 關聯性存在於包含兩個附加資料表的非目前資料庫中。

  • dbRelationLeft 關聯性是左聯結。 左外部聯結包含兩個數據表中第一個(左手)的所有記錄,即使第二個(右)資料表中沒有相符的記錄值也一樣。

  • dbRelationRight 關聯性是右聯結。 右外部聯結包含兩個數據表中第二個(右手)的所有記錄,即使第一個(左方)資料表中沒有相符的記錄值也一樣。

  • dbRelationUpdateCascade更新將會重迭。

  • dbRelationDeleteCascade 刪除將會重迭。

m_pFieldInfos
CDaoRelationFieldInfo 結構的陣列 指標。 陣列包含關聯中每個欄位的一個物件。 資料 m_nFields 成員會提供陣列元素的計數。

m_nFields
資料成員中的 m_pFieldInfos 物件數目 CDaoRelationFieldInfo

備註

上述主要和次要的參考會指出 GetRelationInfo 成員函式在 類別 CDaoDatabase 中傳回 資訊的方式。

Relation 物件不是由 MFC 類別表示。 相反地,類別 MFC 物件基礎的 CDaoDatabase DAO 物件會維護關聯物件的集合: CDaoDatabase 提供成員函式來存取某些個別的關聯資訊專案,或者您可以藉由呼叫 GetRelationInfo 包含資料庫物件的成員函式,一次存取 CDaoRelationInfo 這些物件。

CDaoDatabase::GetRelationInfo 成員函式擷 取的資訊會儲存在 結構中 CDaoRelationInfoCDaoRelationInfo 也會在 Dump 偵錯組建中定義成員函式。 您可以使用 Dump 來傾印 物件的內容 CDaoRelationInfo

需求

標頭: afxdao.h

另請參閱

CDaoRelationFieldInfo 結構