CDaoRelationInfo (Estructura)

La estructura CDaoRelationInfo contiene información sobre una relación definida entre campos de dos tablas en un objeto CDaoDatabase .

Sintaxis

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

Parámetros

m_strName
Asigna un nombre único al objeto de relación. Para obtener más información, consulta el tema sobre la «propiedad Nombre» de la Ayuda de DAO.

m_strTable
Nombra la tabla principal de la relación.

m_strForeignTable
Nombra la tabla externa de la relación. Una tabla externa es una tabla que se usa para contener claves externas. Por lo general, se usa una tabla externa para establecer o aplicar la integridad referencial. La tabla externa suele estar en el lado de una relación uno a varios. Algunos ejemplos de tablas externas incluyen tablas que contienen códigos para estados americanos o provincias canadienses o pedidos de clientes.

m_lAttributes
Contiene información sobre el tipo de relación. El valor de este miembro puede ser uno de los siguientes:

  • dbRelationUnique La relación es de uno a uno.

  • dbRelationDontEnforce La relación no se aplica (sin integridad referencial).

  • dbRelationInherited La relación existe en una base de datos no actual que contiene las dos tablas adjuntas.

  • dbRelationLeft La relación es una combinación izquierda. Una combinación externa izquierda incluye todos los registros de la primera (izquierda) de dos tablas, incluso si no hay valores coincidentes para los registros de la segunda tabla (derecha).

  • dbRelationRight La relación es una combinación correcta. Una combinación externa izquierda incluye todos los registros de la primera (izquierda) de dos tablas, incluso si no hay valores coincidentes para los registros de la segunda tabla (derecha).

  • dbRelationUpdateCascadeNovedades en cascada.

  • dbRelationDeleteCascade Eliminaciones en cascada.

m_pFieldInfos
Un puntero a una matriz de estructuras CDaoRelationFieldInfo. La matriz contiene un objeto para cada campo de la relación. El miembro de datos m_nFields proporciona un recuento de los elementos de la matriz.

m_nFields
Número de objetos CDaoRelationFieldInfo en el miembro de datos m_pFieldInfos.

Comentarios

Las referencias a las principales y secundarias anteriores indican cómo se devuelve la información mediante la función miembro GetRelationInfo en la clase CDaoDatabase.

Los objetos de relación no se representan mediante una clase MFC, En su lugar, el objeto DAO subyacente a un objeto MFC de la clase CDaoDatabase mantiene una colección de objetos de relación: CDaoDatabase proporciona funciones miembro para tener acceso a algunos elementos individuales de información de relación, o puede tener acceso a ellos todos a la vez con un objeto CDaoRelationInfo llamando a la función GetRelationInfo miembro del objeto de base de datos contenedor.

La información recuperada por la función miembro CDaoDatabase::GetTableDefInfo se almacena en una estructura CDaoRelationInfo. CDaoRelationInfo también define una función miembro Dump en las compilaciones de depuración. Puede usar Dump para volcar el contenido de un objeto CDaoRelationInfo.

Requisitos

Encabezado: afxdao.h

Consulte también

CDaoRelationFieldInfo (estructura)