mirror of
				https://github.com/psycopg/psycopg2.git
				synced 2025-11-01 00:07:36 +03:00 
			
		
		
		
	Url to fetch source changed from the official Postgres one to the Github mirror because the former throttled us.
		
			
				
	
	
		
			451 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			451 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| """Error codes for PostgreSQL
 | |
| 
 | |
| This module contains symbolic names for all PostgreSQL error codes.
 | |
| """
 | |
| # psycopg2/errorcodes.py - PostgreSQL error codes
 | |
| #
 | |
| # Copyright (C) 2006-2019 Johan Dahlin  <jdahlin@async.com.br>
 | |
| # Copyright (C) 2020-2021 The Psycopg Team
 | |
| #
 | |
| # psycopg2 is free software: you can redistribute it and/or modify it
 | |
| # under the terms of the GNU Lesser General Public License as published
 | |
| # by the Free Software Foundation, either version 3 of the License, or
 | |
| # (at your option) any later version.
 | |
| #
 | |
| # In addition, as a special exception, the copyright holders give
 | |
| # permission to link this program with the OpenSSL library (or with
 | |
| # modified versions of OpenSSL that use the same license as OpenSSL),
 | |
| # and distribute linked combinations including the two.
 | |
| #
 | |
| # You must obey the GNU Lesser General Public License in all respects for
 | |
| # all of the code used other than OpenSSL.
 | |
| #
 | |
| # psycopg2 is distributed in the hope that it will be useful, but WITHOUT
 | |
| # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 | |
| # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
 | |
| # License for more details.
 | |
| #
 | |
| # Based on:
 | |
| #
 | |
| #   https://www.postgresql.org/docs/current/static/errcodes-appendix.html
 | |
| #
 | |
| 
 | |
| 
 | |
| def lookup(code, _cache={}):
 | |
|     """Lookup an error code or class code and return its symbolic name.
 | |
| 
 | |
|     Raise `KeyError` if the code is not found.
 | |
|     """
 | |
|     if _cache:
 | |
|         return _cache[code]
 | |
| 
 | |
|     # Generate the lookup map at first usage.
 | |
|     tmp = {}
 | |
|     for k, v in globals().items():
 | |
|         if isinstance(v, str) and len(v) in (2, 5):
 | |
|             # Strip trailing underscore used to disambiguate duplicate values
 | |
|             tmp[v] = k.rstrip("_")
 | |
| 
 | |
|     assert tmp
 | |
| 
 | |
|     # Atomic update, to avoid race condition on import (bug #382)
 | |
|     _cache.update(tmp)
 | |
| 
 | |
|     return _cache[code]
 | |
| 
 | |
| 
 | |
| # autogenerated data: do not edit below this point.
 | |
| 
 | |
| # Error classes
 | |
| CLASS_SUCCESSFUL_COMPLETION = '00'
 | |
| CLASS_WARNING = '01'
 | |
| CLASS_NO_DATA = '02'
 | |
| CLASS_SQL_STATEMENT_NOT_YET_COMPLETE = '03'
 | |
| CLASS_CONNECTION_EXCEPTION = '08'
 | |
| CLASS_TRIGGERED_ACTION_EXCEPTION = '09'
 | |
| CLASS_FEATURE_NOT_SUPPORTED = '0A'
 | |
| CLASS_INVALID_TRANSACTION_INITIATION = '0B'
 | |
| CLASS_LOCATOR_EXCEPTION = '0F'
 | |
| CLASS_INVALID_GRANTOR = '0L'
 | |
| CLASS_INVALID_ROLE_SPECIFICATION = '0P'
 | |
| CLASS_DIAGNOSTICS_EXCEPTION = '0Z'
 | |
| CLASS_CASE_NOT_FOUND = '20'
 | |
| CLASS_CARDINALITY_VIOLATION = '21'
 | |
| CLASS_DATA_EXCEPTION = '22'
 | |
| CLASS_INTEGRITY_CONSTRAINT_VIOLATION = '23'
 | |
| CLASS_INVALID_CURSOR_STATE = '24'
 | |
| CLASS_INVALID_TRANSACTION_STATE = '25'
 | |
| CLASS_INVALID_SQL_STATEMENT_NAME = '26'
 | |
| CLASS_TRIGGERED_DATA_CHANGE_VIOLATION = '27'
 | |
| CLASS_INVALID_AUTHORIZATION_SPECIFICATION = '28'
 | |
| CLASS_DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST = '2B'
 | |
| CLASS_INVALID_TRANSACTION_TERMINATION = '2D'
 | |
| CLASS_SQL_ROUTINE_EXCEPTION = '2F'
 | |
| CLASS_INVALID_CURSOR_NAME = '34'
 | |
| CLASS_EXTERNAL_ROUTINE_EXCEPTION = '38'
 | |
| CLASS_EXTERNAL_ROUTINE_INVOCATION_EXCEPTION = '39'
 | |
| CLASS_SAVEPOINT_EXCEPTION = '3B'
 | |
| CLASS_INVALID_CATALOG_NAME = '3D'
 | |
| CLASS_INVALID_SCHEMA_NAME = '3F'
 | |
| CLASS_TRANSACTION_ROLLBACK = '40'
 | |
| CLASS_SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION = '42'
 | |
| CLASS_WITH_CHECK_OPTION_VIOLATION = '44'
 | |
| CLASS_INSUFFICIENT_RESOURCES = '53'
 | |
| CLASS_PROGRAM_LIMIT_EXCEEDED = '54'
 | |
| CLASS_OBJECT_NOT_IN_PREREQUISITE_STATE = '55'
 | |
| CLASS_OPERATOR_INTERVENTION = '57'
 | |
| CLASS_SYSTEM_ERROR = '58'
 | |
| CLASS_SNAPSHOT_FAILURE = '72'
 | |
| CLASS_CONFIGURATION_FILE_ERROR = 'F0'
 | |
| CLASS_FOREIGN_DATA_WRAPPER_ERROR = 'HV'
 | |
| CLASS_PL_PGSQL_ERROR = 'P0'
 | |
| CLASS_INTERNAL_ERROR = 'XX'
 | |
| 
 | |
| # Class 00 - Successful Completion
 | |
| SUCCESSFUL_COMPLETION = '00000'
 | |
| 
 | |
| # Class 01 - Warning
 | |
| WARNING = '01000'
 | |
| NULL_VALUE_ELIMINATED_IN_SET_FUNCTION = '01003'
 | |
| STRING_DATA_RIGHT_TRUNCATION_ = '01004'
 | |
| PRIVILEGE_NOT_REVOKED = '01006'
 | |
| PRIVILEGE_NOT_GRANTED = '01007'
 | |
| IMPLICIT_ZERO_BIT_PADDING = '01008'
 | |
| DYNAMIC_RESULT_SETS_RETURNED = '0100C'
 | |
| DEPRECATED_FEATURE = '01P01'
 | |
| 
 | |
| # Class 02 - No Data (this is also a warning class per the SQL standard)
 | |
| NO_DATA = '02000'
 | |
| NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNED = '02001'
 | |
| 
 | |
| # Class 03 - SQL Statement Not Yet Complete
 | |
| SQL_STATEMENT_NOT_YET_COMPLETE = '03000'
 | |
| 
 | |
| # Class 08 - Connection Exception
 | |
| CONNECTION_EXCEPTION = '08000'
 | |
| SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION = '08001'
 | |
| CONNECTION_DOES_NOT_EXIST = '08003'
 | |
| SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION = '08004'
 | |
| CONNECTION_FAILURE = '08006'
 | |
| TRANSACTION_RESOLUTION_UNKNOWN = '08007'
 | |
| PROTOCOL_VIOLATION = '08P01'
 | |
| 
 | |
| # Class 09 - Triggered Action Exception
 | |
| TRIGGERED_ACTION_EXCEPTION = '09000'
 | |
| 
 | |
| # Class 0A - Feature Not Supported
 | |
| FEATURE_NOT_SUPPORTED = '0A000'
 | |
| 
 | |
| # Class 0B - Invalid Transaction Initiation
 | |
| INVALID_TRANSACTION_INITIATION = '0B000'
 | |
| 
 | |
| # Class 0F - Locator Exception
 | |
| LOCATOR_EXCEPTION = '0F000'
 | |
| INVALID_LOCATOR_SPECIFICATION = '0F001'
 | |
| 
 | |
| # Class 0L - Invalid Grantor
 | |
| INVALID_GRANTOR = '0L000'
 | |
| INVALID_GRANT_OPERATION = '0LP01'
 | |
| 
 | |
| # Class 0P - Invalid Role Specification
 | |
| INVALID_ROLE_SPECIFICATION = '0P000'
 | |
| 
 | |
| # Class 0Z - Diagnostics Exception
 | |
| DIAGNOSTICS_EXCEPTION = '0Z000'
 | |
| STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLER = '0Z002'
 | |
| 
 | |
| # Class 20 - Case Not Found
 | |
| CASE_NOT_FOUND = '20000'
 | |
| 
 | |
| # Class 21 - Cardinality Violation
 | |
| CARDINALITY_VIOLATION = '21000'
 | |
| 
 | |
| # Class 22 - Data Exception
 | |
| DATA_EXCEPTION = '22000'
 | |
| STRING_DATA_RIGHT_TRUNCATION = '22001'
 | |
| NULL_VALUE_NO_INDICATOR_PARAMETER = '22002'
 | |
| NUMERIC_VALUE_OUT_OF_RANGE = '22003'
 | |
| NULL_VALUE_NOT_ALLOWED_ = '22004'
 | |
| ERROR_IN_ASSIGNMENT = '22005'
 | |
| INVALID_DATETIME_FORMAT = '22007'
 | |
| DATETIME_FIELD_OVERFLOW = '22008'
 | |
| INVALID_TIME_ZONE_DISPLACEMENT_VALUE = '22009'
 | |
| ESCAPE_CHARACTER_CONFLICT = '2200B'
 | |
| INVALID_USE_OF_ESCAPE_CHARACTER = '2200C'
 | |
| INVALID_ESCAPE_OCTET = '2200D'
 | |
| ZERO_LENGTH_CHARACTER_STRING = '2200F'
 | |
| MOST_SPECIFIC_TYPE_MISMATCH = '2200G'
 | |
| SEQUENCE_GENERATOR_LIMIT_EXCEEDED = '2200H'
 | |
| NOT_AN_XML_DOCUMENT = '2200L'
 | |
| INVALID_XML_DOCUMENT = '2200M'
 | |
| INVALID_XML_CONTENT = '2200N'
 | |
| INVALID_XML_COMMENT = '2200S'
 | |
| INVALID_XML_PROCESSING_INSTRUCTION = '2200T'
 | |
| INVALID_INDICATOR_PARAMETER_VALUE = '22010'
 | |
| SUBSTRING_ERROR = '22011'
 | |
| DIVISION_BY_ZERO = '22012'
 | |
| INVALID_PRECEDING_OR_FOLLOWING_SIZE = '22013'
 | |
| INVALID_ARGUMENT_FOR_NTILE_FUNCTION = '22014'
 | |
| INTERVAL_FIELD_OVERFLOW = '22015'
 | |
| INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTION = '22016'
 | |
| INVALID_CHARACTER_VALUE_FOR_CAST = '22018'
 | |
| INVALID_ESCAPE_CHARACTER = '22019'
 | |
| INVALID_REGULAR_EXPRESSION = '2201B'
 | |
| INVALID_ARGUMENT_FOR_LOGARITHM = '2201E'
 | |
| INVALID_ARGUMENT_FOR_POWER_FUNCTION = '2201F'
 | |
| INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTION = '2201G'
 | |
| INVALID_ROW_COUNT_IN_LIMIT_CLAUSE = '2201W'
 | |
| INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSE = '2201X'
 | |
| INVALID_LIMIT_VALUE = '22020'
 | |
| CHARACTER_NOT_IN_REPERTOIRE = '22021'
 | |
| INDICATOR_OVERFLOW = '22022'
 | |
| INVALID_PARAMETER_VALUE = '22023'
 | |
| UNTERMINATED_C_STRING = '22024'
 | |
| INVALID_ESCAPE_SEQUENCE = '22025'
 | |
| STRING_DATA_LENGTH_MISMATCH = '22026'
 | |
| TRIM_ERROR = '22027'
 | |
| ARRAY_SUBSCRIPT_ERROR = '2202E'
 | |
| INVALID_TABLESAMPLE_REPEAT = '2202G'
 | |
| INVALID_TABLESAMPLE_ARGUMENT = '2202H'
 | |
| DUPLICATE_JSON_OBJECT_KEY_VALUE = '22030'
 | |
| INVALID_ARGUMENT_FOR_SQL_JSON_DATETIME_FUNCTION = '22031'
 | |
| INVALID_JSON_TEXT = '22032'
 | |
| INVALID_SQL_JSON_SUBSCRIPT = '22033'
 | |
| MORE_THAN_ONE_SQL_JSON_ITEM = '22034'
 | |
| NO_SQL_JSON_ITEM = '22035'
 | |
| NON_NUMERIC_SQL_JSON_ITEM = '22036'
 | |
| NON_UNIQUE_KEYS_IN_A_JSON_OBJECT = '22037'
 | |
| SINGLETON_SQL_JSON_ITEM_REQUIRED = '22038'
 | |
| SQL_JSON_ARRAY_NOT_FOUND = '22039'
 | |
| SQL_JSON_MEMBER_NOT_FOUND = '2203A'
 | |
| SQL_JSON_NUMBER_NOT_FOUND = '2203B'
 | |
| SQL_JSON_OBJECT_NOT_FOUND = '2203C'
 | |
| TOO_MANY_JSON_ARRAY_ELEMENTS = '2203D'
 | |
| TOO_MANY_JSON_OBJECT_MEMBERS = '2203E'
 | |
| SQL_JSON_SCALAR_REQUIRED = '2203F'
 | |
| SQL_JSON_ITEM_CANNOT_BE_CAST_TO_TARGET_TYPE = '2203G'
 | |
| FLOATING_POINT_EXCEPTION = '22P01'
 | |
| INVALID_TEXT_REPRESENTATION = '22P02'
 | |
| INVALID_BINARY_REPRESENTATION = '22P03'
 | |
| BAD_COPY_FILE_FORMAT = '22P04'
 | |
| UNTRANSLATABLE_CHARACTER = '22P05'
 | |
| NONSTANDARD_USE_OF_ESCAPE_CHARACTER = '22P06'
 | |
| 
 | |
| # Class 23 - Integrity Constraint Violation
 | |
| INTEGRITY_CONSTRAINT_VIOLATION = '23000'
 | |
| RESTRICT_VIOLATION = '23001'
 | |
| NOT_NULL_VIOLATION = '23502'
 | |
| FOREIGN_KEY_VIOLATION = '23503'
 | |
| UNIQUE_VIOLATION = '23505'
 | |
| CHECK_VIOLATION = '23514'
 | |
| EXCLUSION_VIOLATION = '23P01'
 | |
| 
 | |
| # Class 24 - Invalid Cursor State
 | |
| INVALID_CURSOR_STATE = '24000'
 | |
| 
 | |
| # Class 25 - Invalid Transaction State
 | |
| INVALID_TRANSACTION_STATE = '25000'
 | |
| ACTIVE_SQL_TRANSACTION = '25001'
 | |
| BRANCH_TRANSACTION_ALREADY_ACTIVE = '25002'
 | |
| INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION = '25003'
 | |
| INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION = '25004'
 | |
| NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION = '25005'
 | |
| READ_ONLY_SQL_TRANSACTION = '25006'
 | |
| SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED = '25007'
 | |
| HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL = '25008'
 | |
| NO_ACTIVE_SQL_TRANSACTION = '25P01'
 | |
| IN_FAILED_SQL_TRANSACTION = '25P02'
 | |
| IDLE_IN_TRANSACTION_SESSION_TIMEOUT = '25P03'
 | |
| TRANSACTION_TIMEOUT = '25P04'
 | |
| 
 | |
| # Class 26 - Invalid SQL Statement Name
 | |
| INVALID_SQL_STATEMENT_NAME = '26000'
 | |
| 
 | |
| # Class 27 - Triggered Data Change Violation
 | |
| TRIGGERED_DATA_CHANGE_VIOLATION = '27000'
 | |
| 
 | |
| # Class 28 - Invalid Authorization Specification
 | |
| INVALID_AUTHORIZATION_SPECIFICATION = '28000'
 | |
| INVALID_PASSWORD = '28P01'
 | |
| 
 | |
| # Class 2B - Dependent Privilege Descriptors Still Exist
 | |
| DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST = '2B000'
 | |
| DEPENDENT_OBJECTS_STILL_EXIST = '2BP01'
 | |
| 
 | |
| # Class 2D - Invalid Transaction Termination
 | |
| INVALID_TRANSACTION_TERMINATION = '2D000'
 | |
| 
 | |
| # Class 2F - SQL Routine Exception
 | |
| SQL_ROUTINE_EXCEPTION = '2F000'
 | |
| MODIFYING_SQL_DATA_NOT_PERMITTED_ = '2F002'
 | |
| PROHIBITED_SQL_STATEMENT_ATTEMPTED_ = '2F003'
 | |
| READING_SQL_DATA_NOT_PERMITTED_ = '2F004'
 | |
| FUNCTION_EXECUTED_NO_RETURN_STATEMENT = '2F005'
 | |
| 
 | |
| # Class 34 - Invalid Cursor Name
 | |
| INVALID_CURSOR_NAME = '34000'
 | |
| 
 | |
| # Class 38 - External Routine Exception
 | |
| EXTERNAL_ROUTINE_EXCEPTION = '38000'
 | |
| CONTAINING_SQL_NOT_PERMITTED = '38001'
 | |
| MODIFYING_SQL_DATA_NOT_PERMITTED = '38002'
 | |
| PROHIBITED_SQL_STATEMENT_ATTEMPTED = '38003'
 | |
| READING_SQL_DATA_NOT_PERMITTED = '38004'
 | |
| 
 | |
| # Class 39 - External Routine Invocation Exception
 | |
| EXTERNAL_ROUTINE_INVOCATION_EXCEPTION = '39000'
 | |
| INVALID_SQLSTATE_RETURNED = '39001'
 | |
| NULL_VALUE_NOT_ALLOWED = '39004'
 | |
| TRIGGER_PROTOCOL_VIOLATED = '39P01'
 | |
| SRF_PROTOCOL_VIOLATED = '39P02'
 | |
| EVENT_TRIGGER_PROTOCOL_VIOLATED = '39P03'
 | |
| 
 | |
| # Class 3B - Savepoint Exception
 | |
| SAVEPOINT_EXCEPTION = '3B000'
 | |
| INVALID_SAVEPOINT_SPECIFICATION = '3B001'
 | |
| 
 | |
| # Class 3D - Invalid Catalog Name
 | |
| INVALID_CATALOG_NAME = '3D000'
 | |
| 
 | |
| # Class 3F - Invalid Schema Name
 | |
| INVALID_SCHEMA_NAME = '3F000'
 | |
| 
 | |
| # Class 40 - Transaction Rollback
 | |
| TRANSACTION_ROLLBACK = '40000'
 | |
| SERIALIZATION_FAILURE = '40001'
 | |
| TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION = '40002'
 | |
| STATEMENT_COMPLETION_UNKNOWN = '40003'
 | |
| DEADLOCK_DETECTED = '40P01'
 | |
| 
 | |
| # Class 42 - Syntax Error or Access Rule Violation
 | |
| SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION = '42000'
 | |
| INSUFFICIENT_PRIVILEGE = '42501'
 | |
| SYNTAX_ERROR = '42601'
 | |
| INVALID_NAME = '42602'
 | |
| INVALID_COLUMN_DEFINITION = '42611'
 | |
| NAME_TOO_LONG = '42622'
 | |
| DUPLICATE_COLUMN = '42701'
 | |
| AMBIGUOUS_COLUMN = '42702'
 | |
| UNDEFINED_COLUMN = '42703'
 | |
| UNDEFINED_OBJECT = '42704'
 | |
| DUPLICATE_OBJECT = '42710'
 | |
| DUPLICATE_ALIAS = '42712'
 | |
| DUPLICATE_FUNCTION = '42723'
 | |
| AMBIGUOUS_FUNCTION = '42725'
 | |
| GROUPING_ERROR = '42803'
 | |
| DATATYPE_MISMATCH = '42804'
 | |
| WRONG_OBJECT_TYPE = '42809'
 | |
| INVALID_FOREIGN_KEY = '42830'
 | |
| CANNOT_COERCE = '42846'
 | |
| UNDEFINED_FUNCTION = '42883'
 | |
| GENERATED_ALWAYS = '428C9'
 | |
| RESERVED_NAME = '42939'
 | |
| UNDEFINED_TABLE = '42P01'
 | |
| UNDEFINED_PARAMETER = '42P02'
 | |
| DUPLICATE_CURSOR = '42P03'
 | |
| DUPLICATE_DATABASE = '42P04'
 | |
| DUPLICATE_PREPARED_STATEMENT = '42P05'
 | |
| DUPLICATE_SCHEMA = '42P06'
 | |
| DUPLICATE_TABLE = '42P07'
 | |
| AMBIGUOUS_PARAMETER = '42P08'
 | |
| AMBIGUOUS_ALIAS = '42P09'
 | |
| INVALID_COLUMN_REFERENCE = '42P10'
 | |
| INVALID_CURSOR_DEFINITION = '42P11'
 | |
| INVALID_DATABASE_DEFINITION = '42P12'
 | |
| INVALID_FUNCTION_DEFINITION = '42P13'
 | |
| INVALID_PREPARED_STATEMENT_DEFINITION = '42P14'
 | |
| INVALID_SCHEMA_DEFINITION = '42P15'
 | |
| INVALID_TABLE_DEFINITION = '42P16'
 | |
| INVALID_OBJECT_DEFINITION = '42P17'
 | |
| INDETERMINATE_DATATYPE = '42P18'
 | |
| INVALID_RECURSION = '42P19'
 | |
| WINDOWING_ERROR = '42P20'
 | |
| COLLATION_MISMATCH = '42P21'
 | |
| INDETERMINATE_COLLATION = '42P22'
 | |
| 
 | |
| # Class 44 - WITH CHECK OPTION Violation
 | |
| WITH_CHECK_OPTION_VIOLATION = '44000'
 | |
| 
 | |
| # Class 53 - Insufficient Resources
 | |
| INSUFFICIENT_RESOURCES = '53000'
 | |
| DISK_FULL = '53100'
 | |
| OUT_OF_MEMORY = '53200'
 | |
| TOO_MANY_CONNECTIONS = '53300'
 | |
| CONFIGURATION_LIMIT_EXCEEDED = '53400'
 | |
| 
 | |
| # Class 54 - Program Limit Exceeded
 | |
| PROGRAM_LIMIT_EXCEEDED = '54000'
 | |
| STATEMENT_TOO_COMPLEX = '54001'
 | |
| TOO_MANY_COLUMNS = '54011'
 | |
| TOO_MANY_ARGUMENTS = '54023'
 | |
| 
 | |
| # Class 55 - Object Not In Prerequisite State
 | |
| OBJECT_NOT_IN_PREREQUISITE_STATE = '55000'
 | |
| OBJECT_IN_USE = '55006'
 | |
| CANT_CHANGE_RUNTIME_PARAM = '55P02'
 | |
| LOCK_NOT_AVAILABLE = '55P03'
 | |
| UNSAFE_NEW_ENUM_VALUE_USAGE = '55P04'
 | |
| 
 | |
| # Class 57 - Operator Intervention
 | |
| OPERATOR_INTERVENTION = '57000'
 | |
| QUERY_CANCELED = '57014'
 | |
| ADMIN_SHUTDOWN = '57P01'
 | |
| CRASH_SHUTDOWN = '57P02'
 | |
| CANNOT_CONNECT_NOW = '57P03'
 | |
| DATABASE_DROPPED = '57P04'
 | |
| IDLE_SESSION_TIMEOUT = '57P05'
 | |
| 
 | |
| # Class 58 - System Error (errors external to PostgreSQL itself)
 | |
| SYSTEM_ERROR = '58000'
 | |
| IO_ERROR = '58030'
 | |
| UNDEFINED_FILE = '58P01'
 | |
| DUPLICATE_FILE = '58P02'
 | |
| 
 | |
| # Class 72 - Snapshot Failure
 | |
| SNAPSHOT_TOO_OLD = '72000'
 | |
| 
 | |
| # Class F0 - Configuration File Error
 | |
| CONFIG_FILE_ERROR = 'F0000'
 | |
| LOCK_FILE_EXISTS = 'F0001'
 | |
| 
 | |
| # Class HV - Foreign Data Wrapper Error (SQL/MED)
 | |
| FDW_ERROR = 'HV000'
 | |
| FDW_OUT_OF_MEMORY = 'HV001'
 | |
| FDW_DYNAMIC_PARAMETER_VALUE_NEEDED = 'HV002'
 | |
| FDW_INVALID_DATA_TYPE = 'HV004'
 | |
| FDW_COLUMN_NAME_NOT_FOUND = 'HV005'
 | |
| FDW_INVALID_DATA_TYPE_DESCRIPTORS = 'HV006'
 | |
| FDW_INVALID_COLUMN_NAME = 'HV007'
 | |
| FDW_INVALID_COLUMN_NUMBER = 'HV008'
 | |
| FDW_INVALID_USE_OF_NULL_POINTER = 'HV009'
 | |
| FDW_INVALID_STRING_FORMAT = 'HV00A'
 | |
| FDW_INVALID_HANDLE = 'HV00B'
 | |
| FDW_INVALID_OPTION_INDEX = 'HV00C'
 | |
| FDW_INVALID_OPTION_NAME = 'HV00D'
 | |
| FDW_OPTION_NAME_NOT_FOUND = 'HV00J'
 | |
| FDW_REPLY_HANDLE = 'HV00K'
 | |
| FDW_UNABLE_TO_CREATE_EXECUTION = 'HV00L'
 | |
| FDW_UNABLE_TO_CREATE_REPLY = 'HV00M'
 | |
| FDW_UNABLE_TO_ESTABLISH_CONNECTION = 'HV00N'
 | |
| FDW_NO_SCHEMAS = 'HV00P'
 | |
| FDW_SCHEMA_NOT_FOUND = 'HV00Q'
 | |
| FDW_TABLE_NOT_FOUND = 'HV00R'
 | |
| FDW_FUNCTION_SEQUENCE_ERROR = 'HV010'
 | |
| FDW_TOO_MANY_HANDLES = 'HV014'
 | |
| FDW_INCONSISTENT_DESCRIPTOR_INFORMATION = 'HV021'
 | |
| FDW_INVALID_ATTRIBUTE_VALUE = 'HV024'
 | |
| FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH = 'HV090'
 | |
| FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER = 'HV091'
 | |
| 
 | |
| # Class P0 - PL/pgSQL Error
 | |
| PLPGSQL_ERROR = 'P0000'
 | |
| RAISE_EXCEPTION = 'P0001'
 | |
| NO_DATA_FOUND = 'P0002'
 | |
| TOO_MANY_ROWS = 'P0003'
 | |
| ASSERT_FAILURE = 'P0004'
 | |
| 
 | |
| # Class XX - Internal Error
 | |
| INTERNAL_ERROR = 'XX000'
 | |
| DATA_CORRUPTED = 'XX001'
 | |
| INDEX_CORRUPTED = 'XX002'
 |