I have Actian PSQL which I use trough unidac / ODBC provider. Is there anyway to get ODBC error code / SQLstate in case of exception?
Eunierror seems to be allways -1.
Bellow is odbc trace
Code: Select all
errortest 260-1480 ENTER SQLGetDiagRecW
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 0x00709270
SQLSMALLINT 1
SQLWCHAR * 0x0018F148
SQLINTEGER * 0x0018F1AC
SQLWCHAR * 0x00709B38
SQLSMALLINT 8192
SQLSMALLINT * 0x0018F1AA
errortest 260-1480 EXIT SQLGetDiagRecW with return code 0 (SQL_SUCCESS)
SQLSMALLINT 3 <SQL_HANDLE_STMT>
SQLHANDLE 0x00709270
SQLSMALLINT 1
SQLWCHAR * 0x0018F148 [ 5] "HY000" <-- I WAN'T THIS ********
SQLINTEGER * 0x0018F1AC (-4994) <-- AND THIS ********
SQLWCHAR * 0x00709B38 [ 150] "[Pervasive][ODBC Client Interface][LNA][PSQL][SQL Engine][Data Record Manager]The record has a key field containing a duplicate value(Btrieve Error 5)"
SQLSMALLINT 8192
SQLSMALLINT * 0x0018F1AA (150)