Partager via


CDaoRelationInfo, structure

La CDaoRelationInfo structure contient des informations sur une relation définie entre les champs de deux tables d’un CDaoDatabase objet.

Remarque

DAO est pris en charge par le biais d’Office 2013. DAO 3.6 est la version finale, et elle est considérée comme obsolète.

Syntaxe

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
};

Paramètres

m_strName
Nomme de manière unique l’objet relation. Pour plus d’informations, consultez la rubrique « Name Property » dans l’aide de DAO.

m_strTable
Nomme la table primaire dans la relation.

m_strForeignTable
Nomme la table étrangère dans la relation. Une table étrangère est une table utilisée pour contenir des clés étrangères. En règle générale, vous utilisez une table étrangère pour établir ou appliquer l’intégrité référentielle. La table étrangère est généralement du côté plusieurs d’une relation un-à-plusieurs. Des exemples de tables étrangères incluent des tables contenant des codes pour les états américains ou les provinces américaines ou les commandes des clients.

m_lAttributes
Contient des informations sur le type de relation. La valeur de ce membre peut être l’une des suivantes :

  • dbRelationUnique La relation est un-à-un.

  • dbRelationDontEnforce La relation n’est pas appliquée (aucune intégrité référentielle).

  • dbRelationInherited La relation existe dans une base de données noncurrente qui contient les deux tables jointes.

  • dbRelationLeft La relation est une jointure gauche. Une jointure externe gauche inclut tous les enregistrements de la première (gauche) de deux tables, même s’il n’existe aucune valeur correspondante pour les enregistrements de la deuxième table (de droite).

  • dbRelationRight La relation est une jointure droite. Une jointure externe droite inclut tous les enregistrements de la deuxième (main droite) de deux tables, même s’il n’existe aucune valeur correspondante pour les enregistrements de la première table (de gauche).

  • dbRelationUpdateCascade Les mises à jour se cascadent.

  • dbRelationDeleteCascade Les suppressions sont en cascade.

m_pFieldInfos
Pointeur vers un tableau de structures CDaoRelationFieldInfo . Le tableau contient un objet pour chaque champ dans la relation. Le m_nFields membre de données donne un nombre d’éléments de tableau.

m_nFields
Nombre d’objets dans le membre de CDaoRelationFieldInfo m_pFieldInfos données.

Notes

Les références à Primary and Secondary ci-dessus indiquent comment les informations sont retournées par la fonction membre GetRelationInfo dans la classe CDaoDatabase.

Les objets relation ne sont pas représentés par une classe MFC. Au lieu de cela, l’objet DAO sous-jacent à un objet MFC de la CDaoDatabase classe gère une collection d’objets de relation : CDaoDatabase fournit des fonctions membres pour accéder à certains éléments individuels d’informations de relation, ou vous pouvez les accéder tous à la fois avec un CDaoRelationInfo objet en appelant la GetRelationInfo fonction membre de l’objet de base de données conteneur.

Les informations récupérées par la fonction membre CDaoDatabase ::GetRelationInfo sont stockées dans une CDaoRelationInfo structure. CDaoRelationInfo définit également une Dump fonction membre dans les builds de débogage. Vous pouvez utiliser Dump pour vider le contenu d’un CDaoRelationInfo objet.

Spécifications

En-tête : afxdao.h

Voir aussi

CDaoRelationFieldInfo, structure