CDBVariant (clase)
Representa un tipo de datos variant para las clases ODBC de MFC.
Sintaxis
class CDBVariant
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CDBVariant::CDBVariant | Construye un objeto CDBVariant . |
Métodos públicos
Nombre | Descripción |
---|---|
CDBVariant::Clear | Borra el objeto CDBVariant . |
Miembros de datos públicos
Nombre | Descripción |
---|---|
CDBVariant::m_dwType | Contiene el tipo de datos del valor almacenado actualmente. Escriba DWORD . |
Miembros de la unión pública
Nombre | Descripción |
---|---|
CDBVariant::m_boolVal | Contiene un valor de tipo BOOL. |
CDBVariant::m_chVal | Contiene un valor de tipo unsigned char . |
CDBVariant::m_dblVal | Contiene un valor de tipo double . |
CDBVariant::m_fltVal | Contiene un valor de tipo float . |
CDBVariant::m_iVal | Contiene un valor de tipo short . |
CDBVariant::m_lVal | Contiene un valor de tipo long . |
CDBVariant::m_pbinary | Contiene un puntero a un objeto de tipo CLongBinary . |
CDBVariant::m_pdate | Contiene un puntero a un objeto de tipo TIMESTAMP_STRUCT. |
CDBVariant::m_pstring | Contiene un puntero a un objeto de tipo CString . |
CDBVariant::m_pstringA | Almacena un puntero a un objeto CString ASCII. |
CDBVariant::m_pstringW | Almacena un puntero a un objeto CString amplio. |
Comentarios
CDBVariant
no tiene una clase base.
CDBVariant
es similar a COleVariant; sin embargo, CDBVariant
no usa OLE. CDBVariant
le permite almacenar un valor sin preocuparse por el tipo de datos del valor. CDBVariant
realiza un seguimiento del tipo de datos del valor actual, que se almacena en una unión.
La clase CRecordset utiliza CDBVariant
objetos en tres funciones miembro: GetFieldValue
, GetBookmark
y SetBookmark
. Por ejemplo, GetFieldValue
le permite capturar datos dinámicamente en una columna. Dado que es posible que el tipo de datos de la columna no se conozca en tiempo de ejecución, GetFieldValue
usa un objeto CDBVariant
para almacenar los datos de la columna.
Jerarquía de herencia
CDBVariant
Requisitos
Encabezado: afxdb.h
CDBVariant::CDBVariant
Crea un objeto CDBVariant
NULL.
CDBVariant();
Comentarios
Establece el miembro de datos m_dwType en DBVT_NULL.
CDBVariant::Clear
Llame a esta función miembro para borrar el objeto CDBVariant
.
void Clear();
Comentarios
Si el valor del miembro de datos m_dwType es DBVT_DATE, DBVT_STRING o DBVT_BINARY, Clear
libera la memoria asociada al miembro de puntero de unión. Clear
establece m_dwType
en DBVT_NULL.
El destructor CDBVariant
llama a Clear
.
CDBVariant::m_boolVal
Especifica un valor de tipo BOOL.
Comentarios
El miembro de datos m_boolVal
pertenece a una unión. Antes de acceder a m_boolVal
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_BOOL, m_boolVal
contendrá un valor válido; de lo contrario, el acceso a m_boolVal
generará resultados no confiables.
CDBVariant::m_chVal
Almacena un valor de tipo unsigned char
.
Comentarios
El miembro de datos m_chVal
pertenece a una unión. Antes de acceder a m_chVal
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_UCHAR, m_chVal
contendrá un valor válido; de lo contrario, el acceso a m_chVal
generará resultados no confiables.
CDBVariant::m_dblVal
Almacena un valor de tipo double
.
Comentarios
El miembro de datos m_dblVal
pertenece a una unión. Antes de acceder a m_dblVal
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_DOUBLE, m_dblVal
contendrá un valor válido; de lo contrario, el acceso a m_dblVal
generará resultados no confiables.
CDBVariant::m_dwType
Este miembro de datos contiene el tipo de datos para el valor que está almacenado actualmente en el miembro de datos de unión del objeto CDBVariant
.
Comentarios
Antes de acceder a esta unión, debe comprobar el valor de m_dwType
para determinar a qué miembro de datos de unión acceder. En la tabla siguiente se enumeran los valores posibles para m_dwType
y el miembro de datos de unión correspondiente.
m_dwType | Miembros de datos de unión |
---|---|
DBVT_NULL | Ningún miembro de la unión es válido para el acceso. |
DBVT_BOOL | m_boolVal |
DBVT_UCHAR | m_chVal |
DBVT_SHORT | m_iVal |
DBVT_LONG | m_lVal |
DBVT_SINGLE | m_fltVal |
DBVT_DOUBLE | m_dblVal |
DBVT_DATE | m_pdate |
DBVT_STRING | m_pstring |
DBVT_BINARY | m_pbinary |
DBVT_ASTRING | m_pstringA |
DBVT_WSTRING | m_pstringW |
CDBVariant::m_fltVal
Almacena un valor de tipo float
.
Comentarios
El miembro de datos m_fltVal
pertenece a una unión. Antes de acceder a m_fltVal
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_SINGLE, m_fltVal
contendrá un valor válido; de lo contrario, el acceso a m_fltVal
generará resultados no confiables.
CDBVariant::m_iVal
Almacena un valor de tipo short
.
Comentarios
El miembro de datos m_iVal
pertenece a una unión. Antes de acceder a m_iVal
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_SHORT, m_iVal
contendrá un valor válido; de lo contrario, el acceso a m_iVal
generará resultados no confiables.
CDBVariant::m_lVal
Almacena un valor de tipo long
.
Comentarios
El miembro de datos m_lVal
pertenece a una unión. Antes de acceder a m_lVal
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_LONG, m_lVal
contendrá un valor válido; de lo contrario, el acceso a m_lVal
generará resultados no confiables.
CDBVariant::m_pbinary
Almacena un puntero a un objeto de tipo CLongBinary.
Comentarios
El miembro de datos m_pbinary
pertenece a una unión. Antes de acceder a m_pbinary
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_BINARY, m_pbinary
contendrá un puntero válido; de lo contrario, el acceso a m_pbinary
generará resultados no confiables.
CDBVariant::m_pdate
Almacena un puntero a un objeto de tipo TIMESTAMP_STRUCT.
Comentarios
El miembro de datos m_pdate
pertenece a una unión. Antes de acceder a m_pdate
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_DATE, m_pdate
contendrá un puntero válido; de lo contrario, el acceso a m_pdate
generará resultados no confiables.
Para más información sobre el tipo de datos TIMESTAMP_STRUCT, consulte el tema Tipos de datos de C en el apéndice D de Referencia del programador de ODBC en Windows SDK.
CDBVariant::m_pstring
Almacena un puntero a un objeto de tipo CString.
Comentarios
El miembro de datos m_pstring
pertenece a una unión. Antes de acceder a m_pstring
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_STRING, m_pstring
contendrá un puntero válido; de lo contrario, el acceso a m_pstring
generará resultados no confiables.
CDBVariant::m_pstringA
Almacena un puntero a un objeto CString ASCII.
Comentarios
El miembro de datos m_pstringA
pertenece a una unión. Antes de acceder a m_pstringA
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_ASTRING, m_pstringA
contendrá un puntero válido; de lo contrario, el acceso a m_pstringA
generará resultados no confiables.
CDBVariant::m_pstringW
Almacena un puntero a un objeto CString amplio.
Comentarios
El miembro de datos m_pstringW
pertenece a una unión. Antes de acceder a m_pstringW
, compruebe primero el valor de CDBVariant::m_dwType. Si m_dwType
se establece en DBVT_WSTRING, m_pstringW
contendrá un puntero válido; de lo contrario, el acceso a m_pstringW
generará resultados no confiables.