Hi,
I'm getting an error when I try to insert a duplicated value in
a primary key or unique index.
I know I can't insert so I'll explain the thing:
When I insert the first time the row, it works
but if I try to re-insert it simply crashes my application,
giving me errors that I couldn't treat (I can treat this error in
MSSQL ODBC Driver and MySQL ODBC Driver).
Browsing the source I found that this was missing (please correct if wrong):
environ.c
case ERROR_DUPLICATED_ENTRY:
pg_sqlstate_set(env, szSqlState, "23000", ??????);
// entry already exists
break;
case ERROR_DUPLICATED_KEY:
pg_sqlstate_set(env, szSqlState, "23000", ???????);
// key already exists
break;
(didn't find the second code yet. What is it?)
statement.h
#define ERRROR_DUPLICATED_ENTRY 34
#define ERRROR_DUPLICATED_KEY 35
(next numbers of the sequence)
I'm still investigating, but if any of you know about it,
let me know.
I also don't know if ERRROR_DUPLICATED_ENTRY
and ERRROR_DUPLICATED_KEY are valid return codes
and where to put them. If someone can help.
TIA,
Ricardo