ACC2000: A "SQL Statement Too Long" Error Message Appears When You Try to Update a FoxPro 6.0 Table (303761)



The information in this article applies to:

  • Microsoft Access 2000

This article was previously published under Q303761
Moderate: Requires basic macro, coding, and interoperability skills.


This article applies to a Microsoft Access database (.mdb) and to a Microsoft Access project (.adp).

SYMPTOMS

When you try to update a linked Microsoft FoxPro 6.0 table in Access 2000, you may receive one or both of the following error messages:
SQL statement too long

-or-

ODBC - insert on a linked table 'TableName' failed. [Microsoft][ODBC VisualFoxProDriver]Cannot update the cursor. #146

CAUSE

This behavior occurs because Access tries to update the entire record even if you are updating only one field, and the SQL statement has a 2,028-byte limit.

RESOLUTION

To work around this behavior, use one of the following methods:
  • If you want to update only some of the fields in the table, create a SQL statement that includes only the fields that you are updating.
  • If you want to update all of the fields in the table, split the update into multiple SQL statements that are all within the 2,028-byte limit.

Modification Type:MinorLast Reviewed:7/13/2004
Keywords:kbprb kbProgramming KB303761