FIX: SQLGetData() Returns SQL_NO_TOTAL in RFX_LongBinary()Last reviewed: September 18, 1997Article ID: Q132399 |
The information in this article applies to:
SYMPTOMSAn assertion may occur in RFX_LongBinary() if an ODBC driver returns a value of SQL_NO_TOTAL (-4) in the location pointed to by plLength after calling SQLGetData().
CAUSEThe MFC RFX_LongBinary() function assumes that an ODBC driver won't return SQL_NO_TOTAL from SQLGetData(). This is by design.
RESOLUTIONIf you must use RFX_LongBinary() to map a binary field to a CLongBinary variable, use the RFX_LongBinary() function in BLOBRFX.EXE. BLOBRFX.EXE, a self-extracting file, contains two files: BLOBRFX.CPP and BLOBRFX.H. BLOBRFX.CPP contains an RFX_LongBinary2() function, which can be used in place of RFX_LongBinary() in your CRecordset's DoFieldExchange() function. BLOBRFX.H contains the prototype for the RFX_LongBinary2() function. The following file is available for download from the Microsoft Software Library:
~ Blobrfx.exe (size: 18980 bytes)For more information about downloading files from the Microsoft Software Library, please see the following article in the Microsoft Knowledge Base:
ARTICLE-ID: Q119591 TITLE : How to Obtain Microsoft Support Files from Online ServicesNOTE: If you are using a precompiled header in your project, you may want to add the following line of code to the top of BLOBRFX.CPP:
#include "stdafx.h" STATUSThis behavior is by design. This problem was corrected in Visual C++ version 4.2 and above.
REFERENCESThe ODBC Programmer's Reference in the Visual C++ Online Books provides information about SQLGetData().
|
Additional query words: Oracle
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |