CDaoQueryDefInfo (Estructura)

La estructura CDaoQueryDefInfo contiene información sobre un objeto queryedef definido para objetos de acceso a datos.

Sintaxis

struct CDaoQueryDefInfo
{
    CString m_strName;               // Primary
    short m_nType;   // Primary
    COleDateTime m_dateCreated;      // Secondary
    COleDateTime m_dateLastUpdated;  // Secondary
    BOOL m_bUpdatable;               // Secondary
    BOOL m_bReturnsRecords;          // Secondary
    CString m_strSQL;                // All
    CString m_strConnect;            // All
    short m_nODBCTimeout;            // All
};

Parámetros

m_strName
Asigna un nombre único al objeto querydef. Para obtener más información, consulta el tema sobre la «propiedad Nombre» de la Ayuda de DAO. Llama a CDaoQueryDef::GetName para recuperar esta propiedad directamente.

m_nType
Un valor que indica el tipo operativo de un objeto querydef. El valor puede ser uno de los siguientes:

  • dbQSelect Seleccionar: la consulta selecciona los registros.

  • dbQAction Acción: la consulta mueve o cambia los datos, pero no devuelve registros.

  • dbQCrosstab Tabla de referencias cruzadas: la consulta devuelve datos en un formato similar a una hoja de cálculo.

  • dbQDelete Eliminar: la consulta elimina un conjunto de filas especificadas.

  • dbQUpdate Actualizar: la consulta cambia un conjunto de registros.

  • dbQAppend Adjuntar: la consulta agrega nuevos registros al final de una tabla o consulta.

  • dbQMakeTable Creador de tablas: la consulta crea una nueva tabla a partir de un conjunto de registros.

  • dbQDDL Definición de datos: la consulta afecta a la estructura de las tablas o sus partes.

  • dbQSQLPassThrough Tránsito: la instrucción SQL se pasa directamente al back-end de la base de datos, sin procesamiento intermedio.

  • dbQSetOperation Unión: la consulta crea un objeto recordset de tipo instantánea que contiene datos de todos los registros especificados en dos o más tablas con los registros duplicados quitados. Para incluir los duplicados, agrega la palabra clave ALL en la instrucción SQL de querydef.

  • dbQSPTBulk Se usa con dbQSQLPassThrough para especificar una consulta que no devuelve registros.

Nota:

Para crear una consulta de tránsito de SQL, no establezcas la constante dbQSQLPassThrough. El motor de la base de datos Microsoft Jet lo establece automáticamente cuando se crea un objeto querydef y se establece la propiedad Connect.

Para obtener más información, vea el tema sobre la propiedad Type en la Ayuda de DAO.

m_dateCreated
La fecha y hora de creación de querydef. Para recuperar directamente la fecha en que se creó querydef, llame a la función miembro GetDateCreated del objeto CDaoTableDef asociado a la tabla. Vea la sección Comentarios más abajo para obtener más información. Para obtener información relacionada, consulta el tema sobre las propiedades DateCreated y LastUpdated de la Ayuda de DAO.

m_dateLastUpdated
La fecha y hora del cambio más reciente realizado en el diseño de la tabla. Para recuperar directamente la fecha en que la tabla se actualizó por última vez, llame a la función miembro GetDateLastUpdated de la función querydef. Vea la sección Comentarios más abajo para obtener más información. Para obtener información relacionada, consulta el tema sobre las propiedades DateCreated y LastUpdated de la Ayuda de DAO.

m_bUpdatable
Indica si se pueden realizar cambios en el objeto querydef. Si esta propiedad es TRUE, la definición de consulta es actualizable; de lo contrario, no lo es. Actualizable significa que se puede cambiar la definición de consulta del objeto querydef. La propiedad Actualizable de un objeto querydef se establece en TRUE si se puede actualizar la definición de consulta, incluso si el conjunto de registros resultante no es actualizable. Para recuperar esta propiedad directamente, llame a la función miembro CanUpdate de querydef. Para obtener más información, consulta el tema sobre la «propiedad Actualizable» de la Ayuda de DAO.

m_bReturnsRecords
Indica si una consulta de tránsito de SQL a una base de datos externa devuelve registros. Si esta propiedad es TRUE, la consulta devuelve registros. Para recuperar directamente esta propiedad, llama a CDaoQueryDef::GetReturnsRecords. No todas las consultas de tránsito de SQL a bases de datos externas devuelven registros. Por ejemplo, una instrucción UPDATE de SQL actualiza los registros sin devolver registros, mientras que una instrucción SELECT de SQL devuelve registros. Para obtener más información, consulte el tema «Propiedad de UserName» en la Ayuda de DAO.

m_strSQL
La instrucción SQL que define la consulta ejecutada por un objeto querydef. La propiedad SQL contiene la instrucción SQL que determina cómo se seleccionan, agrupan y ordenan los registros al ejecutar la consulta. Puedes usar la consulta para seleccionar los registros que se van a incluir en un objeto recordset de tipo dynaset o snapshot. También puedes definir consultas masivas para modificar datos sin devolver registros. Puedes recuperar el valor de esta propiedad directamente llamando a la función miembro GetSQL de querydef.

m_strConnect
Proporciona información sobre el origen de una base de datos utilizada en una consulta de tránsito. Esta información adopta la forma de una cadena de conexión. Para información sobre las cadenas de conexión y sobre cómo recuperar el valor de esta propiedad directamente, consulta la función miembro CDaoDatabase::GetConnect.

m_nODBCTimeout
Número de segundos que el motor de base de datos Microsoft Jet espera antes de que se produzca un error de tiempo de espera cuando se ejecuta una consulta en una base de datos ODBC. Cuando se usa una base de datos ODBC, como Microsoft SQL Server, puede haber retrasos debido al tráfico de red o al uso intensivo del servidor ODBC. En lugar de esperar indefinidamente, puede especificar cuánto tiempo espera el motor de Microsoft Jet antes de generar un error. El valor de tiempo de espera predeterminado es de 60 segundos. Puedes recuperar el valor de esta propiedad directamente llamando a la función miembro GetODBCTimeout de querydef. Para más información, consulta el tema «Propiedad ODBCTimeout» en la Ayuda de DAO.

Comentarios

Querydef es un objeto de la clase CDaoQueryDef. Las referencias a las principales y secundarias anteriores indican cómo se devuelve la información mediante la función miembro GetQueryDefInfo en la clase CDaoDatabase.

La información recuperada por la función miembro CDaoDatabase::GetTableDefInfo se almacena en una estructura CDaoQueryDefInfo. Llama al objeto GetQueryDefInfo de base de datos en cuya colección QueryDefs se almacena el objeto querydef. CDaoQueryDefInfo también define una función miembro Dump en las compilaciones de depuración. Puede usar Dump para volcar el contenido de un objeto CDaoQueryDefInfo. La clase CDaoDatabase también proporciona funciones miembro para acceder directamente a todas las propiedades devueltas en un CDaoQueryDefInfo objeto, por lo que probablemente rara vez tendrá que llamar a GetQueryDefInfo.

Cuando se anexa un nuevo campo o objeto de parámetro a la colección Fields o Parameters de un objeto querydef, se produce una excepción si la base de datos subyacente no admite el tipo de datos especificado para el nuevo objeto.

La configuración de fecha y hora se deriva del equipo en el que se ha creado o actualizado por última vez querydef. En un entorno multiusuario, los usuarios deben obtener esta configuración directamente desde el servidor de archivos usando el tiempo neto para evitar discrepancias en los valores de las propiedades DateCreated y LastUpdated.

Requisitos

Encabezado: afxdao.h

Consulte también

Estructuras, estilos, devoluciones de llamada y mapas de mensajes
CDaoQueryDef (clase)
CDaoDatabase (clase)