Struttura CDaoRelationInfo

La struttura di CDaoRelationInfo contiene informazioni su una relazione definita tra i campi di due tabelle in un oggetto di 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
};

Parametri

  • m_strName
    In modo univoco denominazione l'oggetto della relazione.Per ulteriori informazioni, vedere l'argomento “proprietà name„ nella Guida di DAO.

  • m_strTable
    Denominare la tabella primaria nella relazione.

  • m_strForeignTable
    Denominare la tabella esterna della relazione.Una tabella esterna è una tabella utilizzata per contenere le chiavi esterne.In genere, si utilizza una tabella esterna per stabilire o applicare l'integrità referenziale.La tabella esterna è in genere molti lato di una relazione uno-a-molti.Esempi di tabelle esterne sono incluse le tabelle contenenti codici per gli stati americani o province le canadesi o gli ordini del cliente.

  • m_lAttributes
    Contiene informazioni sul tipo di relazione.Il valore del membro può essere uno dei seguenti valori:

    • La relazione didbRelationUniqueviene operata.

    • La relazione didbRelationDontEnforcenon è applicabile (nessuna integrità referenziale).

    • La relazione didbRelationInheritedesiste in un database non corrente contenente le due tabelle collegate.

    • dbRelationLeft la relazione è un join di sinistra.Un left outer join include tutti i record dal primo (a sinistra) di due tabelle, anche se non sono presenti valori corrispondenti per i record nella seconda tabella (della mano destra).

    • dbRelationRight la relazione è un right outer join.Un right outer join include tutti i record da secondi (mano destra) di due tabelle, anche se non sono presenti valori corrispondenti per i record della prima tabella (a sinistra).

    • Gli aggiornamenti didbRelationUpdateCascadeè sovrapposti.

    • Eliminazione didbRelationDeleteCascadeè sovrapposti.

  • m_pFieldInfos
    Un puntatore a una matrice di strutture di CDaoRelationFieldInfo .La matrice contiene un oggetto per ogni campo della relazione.Il membro dati di m_nFields fornisce un conteggio di elementi di matrice.

  • m_nFields
    Il numero di CDaoRelationFieldInfo oggetti nel membro dati di m_pFieldInfos .

Note

I riferimenti al di sopra principale e secondario indicano come le informazioni restituite dalla funzione membro di GetRelationInfo nella classe CDaoDatabase.

Gli oggetti di relazione non sono rappresentati da una classe MFC.Al contrario, l'oggetto di DAO sottostante a un oggetto MFC della classe di CDaoDatabase gestisce una raccolta di oggetti di relazione: CDaoDatabase fornisce le funzioni membro per accedere ai singoli elementi di informazioni di relazione, oppure è possibile accedervi contemporaneamente a un oggetto di CDaoRelationInfo chiamando la funzione membro di GetRelationInfo dell'oggetto di database contenitore.

Le informazioni recuperate dalla funzione membro di CDaoDatabase::GetRelationInfo vengono archiviate in una struttura di CDaoRelationInfo .CDaoRelationInfo definisce anche una funzione membro di Dump nelle build di debug.È possibile utilizzare Dump per eseguire il dump del contenuto di un oggetto di CDaoRelationInfo .

Requisiti

Header: afxdao.h

Vedere anche

Riferimenti

Struttura CDaoRelationFieldInfo