Freigeben über


CDBVariant-Klasse

Stellt einen varianten Datentyp für die MFC-ODBC-Klassen dar.

Syntax

class CDBVariant

Member

Öffentliche Konstruktoren

Name Beschreibung
CDBVariant::CDBVariant Erstellt ein CDBVariant-Objekt.

Öffentliche Methoden

Name Beschreibung
CDBVariant::Clear Löscht das CDBVariant Objekt.

Öffentliche Datenmember

Name Beschreibung
CDBVariant::m_dwType Enthält den Datentyp des aktuell gespeicherten Werts. Geben Sie DWORDein.

Mitglieder der öffentlichen Union

Name Beschreibung
CDBVariant::m_boolVal Enthält einen Wert vom Typ BOOL.
CDBVariant::m_chVal Enthält einen Wert vom Typ unsigned char.
CDBVariant::m_dblVal Enthält einen Wert vom Typ double.
CDBVariant::m_fltVal Enthält einen Wert vom Typ float.
CDBVariant::m_iVal Enthält einen Wert vom Typ short.
CDBVariant::m_lVal Enthält einen Wert vom Typ long.
CDBVariant::m_pbinary Enthält einen Zeiger auf ein Objekt vom Typ CLongBinary.
CDBVariant::m_pdate Enthält einen Zeiger auf ein Objekt vom Typ TIMESTAMP_STRUCT.
CDBVariant::m_pstring Enthält einen Zeiger auf ein Objekt vom Typ CString.
CDBVariant::m_pstringA Speichert einen Zeiger auf ein ASCII-CString-Objekt.
CDBVariant::m_pstringW Speichert einen Zeiger auf ein breites CString-Objekt .

Hinweise

CDBVariant besitzt keine Basisklasse.

CDBVariant ähnelt COleVariant; verwendet jedoch CDBVariant nicht OLE. CDBVariant ermöglicht es Ihnen, einen Wert zu speichern, ohne sich Gedanken über den Datentyp des Werts machen zu müssen. CDBVariant verfolgt den Datentyp des aktuellen Werts, der in einer Union gespeichert ist.

Klasse CRecordset verwendet CDBVariant Objekte in drei Memberfunktionen: GetFieldValue, , GetBookmarkund SetBookmark. Ermöglicht ihnen beispielsweise das GetFieldValue dynamische Abrufen von Daten in einer Spalte. Da der Datentyp der Spalte zur Laufzeit möglicherweise nicht bekannt ist, wird ein CDBVariant Objekt verwendet, GetFieldValue um die Daten der Spalte zu speichern.

Vererbungshierarchie

CDBVariant

Anforderungen

Header: afxdb.h

CDBVariant::CDBVariant

Erstellt ein NULL-Objekt CDBVariant .

CDBVariant();

Hinweise

Legt das m_dwType-Datenelement auf DBVT_NULL fest.

CDBVariant::Clear

Rufen Sie diese Memberfunktion auf, um das CDBVariant Objekt zu löschen.

void Clear();

Hinweise

Wenn der Wert des m_dwType-Datenelements DBVT_DATE, DBVT_STRING oder DBVT_BINARY ist, wird der Speicher freigegeben, Clear der dem Union-Zeigerelement zugeordnet ist. Clear wird auf DBVT_NULL festgelegt m_dwType .

Der CDBVariant Destruktor ruft auf Clear.

CDBVariant::m_boolVal

Speichert einen Wert vom Typ BOOL.

Hinweise

Das m_boolVal Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_boolValzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType dieser Wert auf DBVT_BOOL festgelegt ist, enthält er m_boolVal einen gültigen Wert. Andernfalls erzeugt der Zugriff m_boolVal unzuverlässige Ergebnisse.

CDBVariant::m_chVal

Speichert einen Wert vom Typ unsigned char.

Hinweise

Das m_chVal Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_chValzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_UCHAR festgelegt ist, enthält sie m_chVal einen gültigen Wert. Andernfalls erzeugt der Zugriff m_chVal unzuverlässige Ergebnisse.

CDBVariant::m_dblVal

Speichert einen Wert vom Typ double.

Hinweise

Das m_dblVal Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_dblValzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_DOUBLE festgelegt ist, enthält sie m_dblVal einen gültigen Wert. Andernfalls erzeugt der Zugriff m_dblVal unzuverlässige Ergebnisse.

CDBVariant::m_dwType

Dieses Datenelement enthält den Datentyp für den Wert, der derzeit im Union-Datenelement des CDBVariant Objekts gespeichert ist.

Hinweise

Bevor Sie auf diese Union zugreifen, müssen Sie den Wert m_dwType überprüfen, um zu bestimmen, auf welches Unionsdatenmitglied zugegriffen werden soll. In der folgenden Tabelle sind die möglichen Werte für m_dwType und das entsprechende Union-Datenelement aufgeführt.

m_dwType Union-Datenmitglied
DBVT_NULL Kein Gewerkschaftsmitglied ist für den Zugriff gültig.
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

Speichert einen Wert vom Typ float.

Hinweise

Das m_fltVal Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_fltValzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_SINGLE festgelegt ist, enthält sie m_fltVal einen gültigen Wert. Andernfalls erzeugt der Zugriff m_fltVal unzuverlässige Ergebnisse.

CDBVariant::m_iVal

Speichert einen Wert vom Typ short.

Hinweise

Das m_iVal Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_iValzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_SHORT festgelegt ist, enthält sie m_iVal einen gültigen Wert. Andernfalls erzeugt der Zugriff m_iVal unzuverlässige Ergebnisse.

CDBVariant::m_lVal

Speichert einen Wert vom Typ long.

Hinweise

Das m_lVal Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_lValzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_LONG festgelegt ist, enthält sie m_lVal einen gültigen Wert. Andernfalls erzeugt der Zugriff m_lVal unzuverlässige Ergebnisse.

CDBVariant::m_pbinary

Speichert einen Zeiger auf ein Objekt vom Typ CLongBinary.

Hinweise

Das m_pbinary Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_pbinaryzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_BINARY festgelegt ist, enthält sie m_pbinary einen gültigen Zeiger. Andernfalls erzeugt der Zugriff m_pbinary unzuverlässige Ergebnisse.

CDBVariant::m_pdate

Speichert einen Zeiger auf ein Objekt vom Typ TIMESTAMP_STRUCT.

Hinweise

Das m_pdate Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_pdatezuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_DATE festgelegt ist, enthält sie m_pdate einen gültigen Zeiger. Andernfalls erzeugt der Zugriff m_pdate unzuverlässige Ergebnisse.

Weitere Informationen zum TIMESTAMP_STRUCT Datentyp finden Sie im Thema C-Datentypen in Anhang D der ODBC-Programmierreferenz im Windows SDK.

CDBVariant::m_pstring

Speichert einen Zeiger auf ein Objekt vom Typ CString.

Hinweise

Das m_pstring Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_pstringzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_STRING festgelegt ist, enthält sie m_pstring einen gültigen Zeiger. Andernfalls erzeugt der Zugriff m_pstring unzuverlässige Ergebnisse.

CDBVariant::m_pstringA

Speichert einen Zeiger auf ein ASCII-CString-Objekt.

Hinweise

Das m_pstringA Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_pstringAzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_ASTRING festgelegt ist, enthält sie m_pstringA einen gültigen Zeiger. Andernfalls erzeugt der Zugriff m_pstringA unzuverlässige Ergebnisse.

CDBVariant::m_pstringW

Speichert einen Zeiger auf ein breites CString-Objekt .

Hinweise

Das m_pstringW Datenmitglied gehört zu einer Vereinigung. Überprüfen Sie vor dem Zugriff m_pstringWzuerst den Wert von CDBVariant::m_dwType. Wenn m_dwType auf DBVT_WSTRING festgelegt ist, enthält sie m_pstringW einen gültigen Zeiger. Andernfalls erzeugt der Zugriff m_pstringW unzuverlässige Ergebnisse.

Siehe auch

Hierarchiediagramm
CRecordset-Klasse