表示 MFC ODBC 類別的 Variant 資料類型。
語法
class CDBVariant
成員
公用建構函式
| 名稱 | 描述 |
|---|---|
| CDBVariant::CDBVariant | 建構 CDBVariant 物件。 |
公用方法
| 名稱 | 描述 |
|---|---|
| CDBVariant::Clear | 清除 CDBVariant 物件。 |
公用資料成員
| 名稱 | 描述 |
|---|---|
| CDBVariant::m_dwType | 包含目前儲存值的數據類型。 輸入 DWORD。 |
公用聯集成員
| 名稱 | 描述 |
|---|---|
| CDBVariant::m_boolVal | 包含 BOOL 類型的值。 |
| CDBVariant::m_chVal | 包含類型的 unsigned char值。 |
| CDBVariant::m_dblVal | 包含類型的 double值。 |
| CDBVariant::m_fltVal | 包含類型的 float值。 |
| CDBVariant::m_iVal | 包含類型的 short值。 |
| CDBVariant::m_lVal | 包含類型的 long值。 |
| CDBVariant::m_pbinary | 包含型 CLongBinary別 物件的指標。 |
| CDBVariant::m_pdate | 包含類型為 TIMESTAMP_STRUCT 物件的指標。 |
| CDBVariant::m_pstring | 包含型 CString別 物件的指標。 |
| CDBVariant::m_pstringA | 儲存 ASCII CString 物件的指標。 |
| CDBVariant::m_pstringW | 儲存寬 型 CString 物件的指標。 |
備註
CDBVariant 沒有基類。
CDBVariant 類似於 COleVariant;不過, CDBVariant 不會使用 OLE。 CDBVariant 可讓您儲存值,而不必擔心值的數據類型。 CDBVariant 會追蹤目前值的數據類型,其儲存在等位中。
類別 CRecordset 會 CDBVariant 利用三個成員函式中的 物件: GetFieldValue、 GetBookmark和 SetBookmark。 例如, GetFieldValue 可讓您動態擷取數據行中的數據。 由於在運行時間可能不知道數據行的數據類型, GetFieldValue 因此會使用 CDBVariant 對象來儲存數據行的數據。
繼承階層架構
CDBVariant
需求
標頭: afxdb.h
CDBVariant::CDBVariant
建立 NULL CDBVariant 物件。
CDBVariant();
備註
將 m_dwType 數據成員設定為 DBVT_NULL。
CDBVariant::Clear
呼叫這個成員函式以清除 CDBVariant 物件。
void Clear();
備註
如果m_dwType數據成員的值是DBVT_DATE、DBVT_STRING或DBVT_BINARY,Clear則會釋放與等位指標成員相關聯的記憶體。 Clear 會將 設定 m_dwType 為 DBVT_NULL。
解 CDBVariant 構函式會呼叫 Clear。
CDBVariant::m_boolVal
儲存 BOOL 類型的值。
備註
數據 m_boolVal 成員屬於等位。 存取 m_boolVal之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_BOOL,則會 m_boolVal 包含有效的值;否則,存取 m_boolVal 會產生不可靠的結果。
CDBVariant::m_chVal
儲存類型的 unsigned char值。
備註
數據 m_chVal 成員屬於等位。 存取 m_chVal之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_UCHAR,則 m_chVal 包含有效的值,否則存取 m_chVal 會產生不可靠的結果。
CDBVariant::m_dblVal
儲存類型的 double值。
備註
數據 m_dblVal 成員屬於等位。 存取 m_dblVal之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_DOUBLE,則 m_dblVal 包含有效的值;否則,存取 m_dblVal 會產生不可靠的結果。
CDBVariant::m_dwType
此數據成員包含目前儲存在 CDBVariant 物件聯集數據成員中之值的數據類型。
備註
存取此等位之前,您必須檢查 的值 m_dwType ,才能判斷要存取的聯集數據成員。 下表列出的可能值 m_dwType ,以及對應的等位數據成員。
| m_dwType | 等位數據成員 |
|---|---|
| DBVT_NULL | 沒有任何聯集成員對存取有效。 |
| 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
儲存類型的 float值。
備註
數據 m_fltVal 成員屬於等位。 存取 m_fltVal之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_SINGLE,則 m_fltVal 包含有效的值,否則存取 m_fltVal 會產生不可靠的結果。
CDBVariant::m_iVal
儲存類型的 short值。
備註
數據 m_iVal 成員屬於等位。 存取 m_iVal之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_SHORT,則 m_iVal 包含有效的值;否則,存取 m_iVal 會產生不可靠的結果。
CDBVariant::m_lVal
儲存類型的 long值。
備註
數據 m_lVal 成員屬於等位。 存取 m_lVal之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_LONG,則 m_lVal 包含有效的值;否則,存取 m_lVal 會產生不可靠的結果。
CDBVariant::m_pbinary
儲存 CLongBinary 類型的物件的指標。
備註
數據 m_pbinary 成員屬於等位。 存取 m_pbinary之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_BINARY,則 m_pbinary 包含有效的指標;否則,存取 m_pbinary 會產生不可靠的結果。
CDBVariant::m_pdate
儲存類型為 TIMESTAMP_STRUCT 物件的指標。
備註
數據 m_pdate 成員屬於等位。 存取 m_pdate之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_DATE,則 m_pdate 包含有效的指標;否則,存取 m_pdate 會產生不可靠的結果。
如需TIMESTAMP_STRUCT數據類型的詳細資訊,請參閱 Windows SDK 中 ODBC 程式設計人員參考附錄 D 中的 C 數據類型主題。
CDBVariant::m_pstring
儲存 CString 類型的物件的指標。
備註
數據 m_pstring 成員屬於等位。 存取 m_pstring之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_STRING,則 m_pstring 包含有效的指標,否則存取 m_pstring 會產生不可靠的結果。
CDBVariant::m_pstringA
儲存 ASCII CString 物件的指標。
備註
數據 m_pstringA 成員屬於等位。 存取 m_pstringA之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_ASTRING,則 m_pstringA 包含有效的指標;否則,存取 m_pstringA 會產生不可靠的結果。
CDBVariant::m_pstringW
儲存寬 型 CString 物件的指標。
備註
數據 m_pstringW 成員屬於等位。 存取 m_pstringW之前,請先檢查CDBVariant::m_dwType的值。 如果 m_dwType 設定為 DBVT_WSTRING,則 m_pstringW 包含有效的指標,否則存取 m_pstringW 會產生不可靠的結果。