Changes in SQL-parser. Support for SQLSTATE and NativeError.

SQL-parser of IBProvider v3 was improved

New rowset properties was added in IBProvider v3

SQLSTATE and NativeError now supported (v3)

If you are using ADODB for access to Firebird or Interbase, you can get SQLSTATE and NativeError via Errors object of ADODB.Connection:

For example:

option explicit

dim cn
set cn = CreateObject("ADODB.Connection")

cn.Provider="LCPI.IBProvider.3"

cn.Properties("location")   = "localhost:d:\database\employee.fdb"
cn.Properties("user id")    ="SYSDBA"
cn.Properties("password")   ="masterkey"
cn.Properties("auto_commit")=true

call cn.Open()

on error resume next

call cn.Execute("DROP TABLE ABRA_KADABRA")

on error goto 0

dim i

for i=0 to cn.Errors.Count-1
 wscript.echo "--- ERROR: "&cstr(i+1)
 wscript.echo "SQLState    : "&cn.Errors.Item(i).SQLSTATE 
 wscript.echo "NativeError : "&cn.Errors.Item(i).NativeError
next

Result:

--- ERROR: 1
SQLState    : 42S02
NativeError : 336397206 <-- ISC CODE: isc_dsql_table_not_found