Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

DOC: Generic Categories of ODBC Errors


View products that this article applies to.

This article was previously published under Q148641

↑ Back to the top


Summary

This article provides a generic description for each of three categories of ODBC errors including typical causes and the type of error trapping that can be used to trap for that type of error.

↑ Back to the top


More information

There are three types of error cases in connectivity issues with ODBC:

  • FoxPro Errors
  • ODBC Errors
  • Connectivity Warnings

FoxPro Errors

These are typical Xbase errors that are not produced by ODBC. These errors include fundamental errors such as invalid parameters, insufficient memory, and so on. To trap these errors, you can use the traditional FoxPro error handling paradigm, including ON ERROR.

ODBC Errors

These are errors returned from the ODBC Application Programming Interface (API). Any error returned from the ODBC API is recognized by Visual FoxPro as an error outside of the scope of the internal Visual FoxPro operation. An example of this is when an SQL function called within a Visual FoxPro application returns a -1 indicating that the function failed. In this case, the value returned by the SQL function indicates failure and the errors are saved and made accessible by using AERROR(). The exact process is described in the following article in the Microsoft Knowledge Base:
134721� How to Handle Visual FoxPro Connectivity Errors w/o DBERROR()
In this case, you can't use an ON ERROR routine.

Connectivity Warnings

These errors indicate situations where the ODBC-related function is completed, but the user is warned that an exception occurred. For example, some ODBC driver parameters were not set, conversion errors occurred while fetching data, the user canceled the function, multiple updates were produced by a single view row due to a non-unique key, and so on.

Warnings bring up simple alert windows that you can disable by setting the DispWarning connection property to false (.F.). You can use the SQLSETPROP() function to set the DispWarning Property.

These warnings are saved and are accessible by using AERROR(). The exact process is described in the following article in the Microsoft Knowledge Base:
134721� How to Handle Visual FoxPro Connectivity Errors w/o DBERROR()
However, if multiple warnings occur in the same connectivity command or function, only the last one is available to AERROR(). This is different from ODBC errors, which are batched in ODBC and buffered by the Visual FoxPro error mechanism as a single error event.

In this case, you can't use an ON ERROR routine.

↑ Back to the top


Keywords: KB148641, kbdocfix

↑ Back to the top

Article Info
Article ID : 148641
Revision : 5
Created on : 3/14/2005
Published on : 3/14/2005
Exists online : False
Views : 387