Use AERROR() in Place of DBERROR() for ODBC Errors
ID: Q130506
|
The information in this article applies to:
-
Microsoft Visual FoxPro for Windows, versions 3.0, 6.0
SUMMARY
DBERROR() is no longer used to retrieve errors generated by an ODBC
function.
AERROR() is a general Visual FoxPro error function that creates a memory
variable array containing information about the most recent Visual FoxPro,
OLE, or ODBC error.
MORE INFORMATION
The following example shows how to use AERROR(). Here a database is
specified in the ODBC function SQLEXEC() that does not exist on the server.
nHandle=SQLCONNECT('<SQL Server data source>','sa','')
nSuccess=SQLEXEC(nHandle,'use bad_db')
Dimension aErrArray[1]
nNumerrors=AERROR(aErrArray)
The variable nNumerrors now contains the number of rows in the array
aErrArray (2 in this case) and the array aErrArray contains the error
information, as shown below:
AERRARRAY Pub A
(1,1) N 1526 ( 1526.00000000)
(1,2) C "Connectivity error: [Microsoft][ODBC SQL Server
Driver][SQL Server] Attempt to locate entry in
Sysdatabases for database 'bad_db' by name
failed - no entry found under that name. Make
sure that name is entered properly."
(1,3) C "[Microsoft][ODBC SQL Server Driver][SQL Server]
Attempt to locate entry in Sysdatabases for
database 'bad_db' by name failed - no entry
found under that name. Make sure that name is
entered properly."
(1,4) C "08004"
(1,5) N 911 ( 911.00000000)
(1,6) N 1 ( 1.00000000)
(1,7) C .NULL.
(2,1) N 1526 ( 1526.00000000)
(2,2) C "Connectivity error: [Microsoft][ODBC SQL Server
Driver][SQL Server] Attempt to locate entry in
Sysdatabases for database 'bad_db' by name
failed - no entry found under that name. Make
sure that name is entered properly."
(2,3) C "[Microsoft][ODBC SQL Server Driver][SQL Server]
Changed database context to 'pubs'."
(2,4) C "01000"
(2,5) N 5701 ( 5701.00000000)
(2,6) N 1 ( 1.00000000)
(2,7) C .NULL.
The following table describes the contents of each element when an ODBC
error numbered 1526 occurs. The array contains two or more rows; one row
for each ODBC error.
Element number Description
1 Numeric. Contains 1526.
2 Character. The text of the error message.
3 Character. The text of the ODBC error message.
4 Character. The current ODBC SQL state.
5 Numeric. The error number from the ODBC data source.
6 Numeric. The ODBC connection handle.
7 The null value.
Additional query words:
kbfest VFoxWin
Keywords : kbVFp300 kbVFp600 FxprgClientsvr
Version : 3.00
Platform : WINDOWS
Issue type :