Freigeben über


CDaoRelationInfo-Struktur

Die CDaoRelationInfo Struktur enthält Informationen zu einer Beziehung, die zwischen Feldern zweier Tabellen in einem CDaoDatabase-Objekt definiert ist.

Syntax

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

Parameter

m_strName
Benennt das Relation-Objekt eindeutig. Weitere Informationen finden Sie im Thema "Name Property" in der DAO-Hilfe.

m_strTable
Benennt die Primärtabelle in der Beziehung.

m_strForeignTable
Benennt die Fremdtabelle in der Beziehung. Eine Fremdtabelle ist eine Tabelle, die verwendet wird, um Fremdschlüssel zu enthalten. Im Allgemeinen verwenden Sie eine Fremdtabelle zum Einrichten oder Erzwingen der referenziellen Integrität. Die Fremdtabelle befindet sich in der Regel auf der n-Seite einer 1:n-Beziehung. Beispiele für Fremdtabellen sind Tabellen, die Codes für die amerikanischen Staaten oder kanadischen Provinzen oder Kundenbestellungen enthalten.

m_lAttributes
Enthält Informationen zum Beziehungstyp. Der Wert dieses Elements kann eine der folgenden Sein:

  • dbRelationUnique Die Beziehung ist 1:1.

  • dbRelationDontEnforce Die Beziehung wird nicht erzwungen (keine referenzielle Integrität).

  • dbRelationInherited Beziehung ist in einer nicht aktuellen Datenbank vorhanden, die die beiden angefügten Tabellen enthält.

  • dbRelationLeft Die Beziehung ist eine linke Verknüpfung. Eine linke äußere Verknüpfung enthält alle Datensätze aus der ersten (linken) von zwei Tabellen, auch wenn keine übereinstimmenden Werte für Datensätze in der zweiten (rechten) Tabelle vorhanden sind.

  • dbRelationRight Die Beziehung ist eine richtige Verknüpfung. Eine rechte äußere Verknüpfung enthält alle Datensätze aus der zweiten (rechten Seite) von zwei Tabellen, auch wenn keine übereinstimmenden Werte für Datensätze in der ersten (linken) Tabelle vorhanden sind.

  • dbRelationUpdateCascade Updates werden kaskadierten.

  • dbRelationDeleteCascade Löschvorgänge werden kaskadiert.

m_pFieldInfos
Ein Zeiger auf ein Array von CDaoRelationFieldInfo-Strukturen . Das Array enthält ein Objekt für jedes Feld in der Beziehung. Das m_nFields Datenelement gibt eine Anzahl der Arrayelemente an.

m_nFields
Die Anzahl der CDaoRelationFieldInfo Objekte im m_pFieldInfos Datenmemm.

Hinweise

Die obigen Verweise auf Primary und Secondary geben an, wie die Informationen von der GetRelationInfo-Memberfunktion in der Klasse CDaoDatabasezurückgegeben werden.

Relation-Objekte werden nicht durch eine MFC-Klasse dargestellt. Stattdessen enthält das DAO-Objekt, das einem MFC-Objekt der CDaoDatabase Klasse zugrunde liegt, Standard eine Auflistung von Beziehungsobjekten enthält: CDaoDatabase stellt Memberfunktionen bereit, um auf einige einzelne Elemente von Beziehungsinformationen zuzugreifen, oder Sie können alle gleichzeitig mit einem CDaoRelationInfo Objekt zugreifen, indem Sie die GetRelationInfo Memberfunktion des enthaltenden Datenbankobjekts aufrufen.

Informationen, die von der CDaoDatabase::GetRelationInfo-Memberfunktion abgerufen werden, werden in einer CDaoRelationInfo Struktur gespeichert. CDaoRelationInfo definiert zudem eine Memberfunktion Dump in Debugbuilds. Sie können Dump verwenden, um den Inhalt eines CDaoRelationInfo-Objekts auszugeben.

Anforderungen

Header: afxdao.h

Siehe auch

CDaoRelationFieldInfo-Struktur