PRB: SQLBulkOperations Returns Function Sequence Error with Jet 4.0 ODBC Driver (257517)



The information in this article applies to:

  • Microsoft ODBC Driver for Access 4.0
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.5

This article was previously published under Q257517

SYMPTOMS

With the Microsoft Jet 4.0 ODBC driver, a call to the SQLBulkOperations ODBC function, when preceded by a call to SQLExtendedFetch, may result in the following error:
DIAG [S1010] [Microsoft][ODBC Driver Manager] Function sequence error (0)

CAUSE

Earlier versions (3.5x) of the Jet ODBC drivers do not implement SQLBulkOperations. If an application uses this function with these versions, the ODBC Driver Manager changes the call to SQLSetPos, which does not produce this error when preceeded by SQLExtendedFetch.

Because version 4.0 of the Jet driver implements SQLBulkOperations, the call is not transformed by the Driver Manager. Instead, it is passed unchanged to the driver, which results in the error.

NOTE: The ODBC documentation expressly states that the combination of SQLExtendedFetch followed by SQLBulkOperations will result in a function sequence error.

RESOLUTION

Replace the SQLExtendedFetch call with a call to SQLFetchScroll.

Modification Type:MajorLast Reviewed:9/16/2003
Keywords:kbJET kbprb KB257517 kbAudDeveloper