mirror of
https://github.com/psycopg/psycopg2.git
synced 2025-02-07 12:50:32 +03:00
Map error classes 20 and HV to more specific exceptions
This commit is contained in:
parent
08fa6550ab
commit
d6e0b284e7
|
@ -76,6 +76,7 @@ exception_from_sqlstate(const char *sqlstate)
|
||||||
break;
|
break;
|
||||||
case '2':
|
case '2':
|
||||||
switch (sqlstate[1]) {
|
switch (sqlstate[1]) {
|
||||||
|
case '0': /* Class 20 - Case Not Found */
|
||||||
case '1': /* Class 21 - Cardinality Violation */
|
case '1': /* Class 21 - Cardinality Violation */
|
||||||
return ProgrammingError;
|
return ProgrammingError;
|
||||||
case '2': /* Class 22 - Data Exception */
|
case '2': /* Class 22 - Data Exception */
|
||||||
|
@ -135,6 +136,8 @@ exception_from_sqlstate(const char *sqlstate)
|
||||||
return OperationalError;
|
return OperationalError;
|
||||||
case 'F': /* Class F0 - Configuration File Error */
|
case 'F': /* Class F0 - Configuration File Error */
|
||||||
return InternalError;
|
return InternalError;
|
||||||
|
case 'H': /* Class HV - Foreign Data Wrapper Error (SQL/MED) */
|
||||||
|
return OperationalError;
|
||||||
case 'P': /* Class P0 - PL/pgSQL Error */
|
case 'P': /* Class P0 - PL/pgSQL Error */
|
||||||
return InternalError;
|
return InternalError;
|
||||||
case 'X': /* Class XX - Internal Error */
|
case 'X': /* Class XX - Internal Error */
|
||||||
|
|
Loading…
Reference in New Issue
Block a user