SQLGetData() Returns SQL_NO_TOTAL in RFX_LongBinary()

ID: Q132399


The information in this article applies to:
  • The Microsoft Foundation Classes (MFC), used with:
    • Microsoft Visual C++ for Windows, 16-bit edition, version 1.52
    • Microsoft Visual C++, 32-bit Editions, versions 2.1, 4.0


SUMMARY

An 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(). The MFC RFX_LongBinary() function assumes that an ODBC driver won't return SQL_NO_TOTAL from SQLGetData(). This is by design. If 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.



Blobrfx.exe

For more information about how to download files from the Microsoft Download Center, please visit the Download Center at the following Web address

http://www.microsoft.com/downloads/search.asp
and then click How to use the Microsoft Download Center.

NOTE: 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" 
This behavior is by design. This problem was corrected in Visual C++ version 4.2 and above.


MORE INFORMATION


REFERENCES

The ODBC Programmer's Reference in the Visual C++ Online Books provides information about SQLGetData().

Additional query words: Oracle

Keywords : kbfile kbprg kbDatabase kbMFC kbODBC kbVC
Version : winnt:2.1,4.0
Platform : winnt
Issue type : kbprb


Last Reviewed: December 10, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.