Yes, there is a preferred standard, it defines char(5) strings that correspond to specific errors.
It is in SQLSTATE in ESQL/C programs and conforms to X/Open and ANSI.
It consits of numbers and upper case letters only. The first 2 digits are the Class the, last 3
are the subclass. I think only the Class is in the norm.
e.g.: 02000 No data found or End of data reached
00000 Success.
0A000 Feature not supported
You get additional info through:
exec sql get diagnostics :num_rows_affected = ROW_COUNT [, :num = NUMBER, ...];
The integer SQLCODE + the sqlca structure is from an old ANSI norm:
0 Success
100 end of data
< 0 execution not successful
> 0 warning
Andreas
----------
Von: Vadim Mikheev[SMTP:vadim@krs.ru]
Gesendet: Dienstag, 26. Mai 1998 18:43
An: Zeugswetter Andreas SARZ
Cc: 'hackers@postgresql.org'; 'mimo@interdata.com.pl'
Betreff: Re: [HACKERS] error messages not only English
Andreas Zeugswetter wrote:
>
> Anyway, we are still missing the first step in this direction: enumerate ERROR messages.
BTW, are error codes in standard ?
Vadim