Classe CDBVariant
Representa um tipo de dados variante para as classes ODBC do MFC.
Sintaxe
class CDBVariant
Membros
Construtores públicos
Nome | Descrição |
---|---|
CDBVariant::CDBVariant | Constrói um objeto CDBVariant . |
Métodos públicos
Nome | Descrição |
---|---|
CDBVariant::Clear | Limpa o objeto CDBVariant . |
Membros de Dados Públicos
Nome | Descrição |
---|---|
CDBVariant::m_dwType | Contém o tipo de dados do valor armazenado no momento. Digite DWORD . |
Membros de união públicos
Nome | Descrição |
---|---|
CDBVariant::m_boolVal | Contém um valor do tipo BOOL. |
CDBVariant::m_chVal | Contém um valor do tipo unsigned char . |
CDBVariant::m_dblVal | Contém um valor do tipo double . |
CDBVariant::m_fltVal | Contém um valor do tipo float . |
CDBVariant::m_iVal | Contém um valor do tipo short . |
CDBVariant::m_lVal | Contém um valor do tipo long . |
CDBVariant::m_pbinary | Contém um ponteiro para um objeto do tipo CLongBinary . |
CDBVariant::m_pdate | Contém um ponteiro para um objeto do tipo TIMESTAMP_STRUCT. |
CDBVariant::m_pstring | Contém um ponteiro para um objeto do tipo CString . |
CDBVariant::m_pstringA | Armazena um ponteiro para um objeto CString ASCII. |
CDBVariant::m_pstringW | Armazena um ponteiro para um objeto CString largo. |
Comentários
CDBVariant
não tem uma classe base.
CDBVariant
é semelhante a COleVariant; no entanto, CDBVariant
não usa OLE. CDBVariant
permite armazenar um valor sem se preocupar com o tipo de dados do valor. CDBVariant
rastreia o tipo de dados do valor atual, que é armazenado em uma união.
A classe CRecordset utiliza objetos CDBVariant
em três funções membro: GetFieldValue
, GetBookmark
e SetBookmark
. Por exemplo, GetFieldValue
permite que você busque dinamicamente dados em uma coluna. Como o tipo de dados da coluna pode não ser conhecido em tempo de execução, GetFieldValue
usa um objeto CDBVariant
para armazenar os dados da coluna.
Hierarquia de herança
CDBVariant
Requisitos
Cabeçalho: afxdb.h
CDBVariant::CDBVariant
Cria um objeto CDBVariant
NULL.
CDBVariant();
Comentários
Define o membro de dados m_dwType como DBVT_NULL.
CDBVariant::Clear
Chame essa função membro para limpar o objeto CDBVariant
.
void Clear();
Comentários
Se o valor do membro de dados m_dwType for DBVT_DATE, DBVT_STRING ou DBVT_BINARY, Clear
liberará a memória associada ao membro do ponteiro de união. Clear
define m_dwType
como DBVT_NULL.
O destruidor CDBVariant
chama Clear
.
CDBVariant::m_boolVal
Armazena um valor do tipo BOOL.
Comentários
O membro de dados m_boolVal
pertence a uma união. Antes de acessar m_boolVal
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_BOOL, m_boolVal
conterá um valor válido; caso contrário, o acesso a m_boolVal
produzirá resultados não confiáveis.
CDBVariant::m_chVal
Armazena um valor do tipo unsigned char
.
Comentários
O membro de dados m_chVal
pertence a uma união. Antes de acessar m_chVal
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_UCHAR, m_chVal
conterá um valor válido; caso contrário, o acesso a m_chVal
produzirá resultados não confiáveis.
CDBVariant::m_dblVal
Armazena um valor do tipo double
.
Comentários
O membro de dados m_dblVal
pertence a uma união. Antes de acessar m_dblVal
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_DOUBLE, m_dblVal
conterá um valor válido; caso contrário, o acesso a m_dblVal
produzirá resultados não confiáveis.
CDBVariant::m_dwType
Esse membro de dados contém o tipo de dados do valor armazenado atualmente no membro de dados da união do objeto CDBVariant
.
Comentários
Antes de acessar essa união, você deve verificar o valor de m_dwType
para determinar qual membro de dados da união acessar. A tabela a seguir lista os valores possíveis de m_dwType
e o membro de dados da união correspondente.
m_dwType | Membro de dados da união |
---|---|
DBVT_NULL | Nenhum membro da união é válido para acesso. |
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
Armazena um valor do tipo float
.
Comentários
O membro de dados m_fltVal
pertence a uma união. Antes de acessar m_fltVal
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_SINGLE, m_fltVal
conterá um valor válido; caso contrário, o acesso a m_fltVal
produzirá resultados não confiáveis.
CDBVariant::m_iVal
Armazena um valor do tipo short
.
Comentários
O membro de dados m_iVal
pertence a uma união. Antes de acessar m_iVal
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_SHORT, m_iVal
conterá um valor válido; caso contrário, o acesso a m_iVal
produzirá resultados não confiáveis.
CDBVariant::m_lVal
Armazena um valor do tipo long
.
Comentários
O membro de dados m_lVal
pertence a uma união. Antes de acessar m_lVal
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_LONG, m_lVal
conterá um valor válido; caso contrário, o acesso a m_lVal
produzirá resultados não confiáveis.
CDBVariant::m_pbinary
Armazena um ponteiro para um objeto do tipo CLongBinary.
Comentários
O membro de dados m_pbinary
pertence a uma união. Antes de acessar m_pbinary
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_BINARY, m_pbinary
conterá um ponteiro válido; caso contrário, o acesso a m_pbinary
produzirá resultados não confiáveis.
CDBVariant::m_pdate
Armazena um ponteiro para um objeto do tipo TIMESTAMP_STRUCT.
Comentários
O membro de dados m_pdate
pertence a uma união. Antes de acessar m_pdate
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_DATE, m_pdate
conterá um ponteiro válido; caso contrário, o acesso a m_pdate
produzirá resultados não confiáveis.
Para obter mais informações sobre o tipo de dados TIMESTAMP_STRUCT, consulte o tópico Tipos de Dados C no Apêndice D da Referência do Programador do ODBC no SDK do Windows.
CDBVariant::m_pstring
Armazena um ponteiro para um objeto do tipo CString.
Comentários
O membro de dados m_pstring
pertence a uma união. Antes de acessar m_pstring
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_STRING, m_pstring
conterá um ponteiro válido; caso contrário, o acesso a m_pstring
produzirá resultados não confiáveis.
CDBVariant::m_pstringA
Armazena um ponteiro para um objeto CString ASCII.
Comentários
O membro de dados m_pstringA
pertence a uma união. Antes de acessar m_pstringA
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_ASTRING, m_pstringA
conterá um ponteiro válido; caso contrário, o acesso a m_pstringA
produzirá resultados não confiáveis.
CDBVariant::m_pstringW
Armazena um ponteiro para um objeto CString largo.
Comentários
O membro de dados m_pstringW
pertence a uma união. Antes de acessar m_pstringW
, verifique o valor de CDBVariant::m_dwType. Se m_dwType
for definido como DBVT_WSTRING, m_pstringW
conterá um ponteiro válido; caso contrário, o acesso a m_pstringW
produzirá resultados não confiáveis.