Error Code Meaning Constant
Class 00 Successful Completion  
0 SUCCESSFUL COMPLETION successful_completion
Class 01 Warning  
1000 WARNING warning
0100C DYNAMIC RESULT SETS RETURNED dynamic_result_sets_returned
1008 IMPLICIT ZERO BIT PADDING implicit_zero_bit_padding
1003 NULL VALUE ELIMINATED IN SET FUNCTION null_value_eliminated_in_set_function
1007 PRIVILEGE NOT GRANTED privilege_not_granted
1006 PRIVILEGE NOT REVOKED privilege_not_revoked
1004 STRING DATA RIGHT TRUNCATION string_data_right_truncation
01P01 DEPRECATED FEATURE deprecated_feature
Class 02 No Data — this is also a warning class per the SQL standard  
2000 NO DATA no_data
2001 NO ADDITIONAL DYNAMIC RESULT SETS RETURNED no_additional_dynamic_result_sets_returned
Class 03 SQL Statement Not Yet Complete  
3000 SQL STATEMENT NOT YET COMPLETE sql_statement_not_yet_complete
Class 08 Connection Exception  
8000 CONNECTION EXCEPTION connection_exception
8003 CONNECTION DOES NOT EXIST connection_does_not_exist
8006 CONNECTION FAILURE connection_failure
8001 SQLCLIENT UNABLE TO ESTABLISH SQLCONNECTION sqlclient_unable_to_establish_sqlconnection
8004 SQLSERVER REJECTED ESTABLISHMENT OF SQLCONNECTION sqlserver_rejected_establishment_of_sqlconnection
8007 TRANSACTION RESOLUTION UNKNOWN transaction_resolution_unknown
08P01 PROTOCOL VIOLATION protocol_violation
Class 09 Triggered Action Exception  
9000 TRIGGERED ACTION EXCEPTION triggered_action_exception
Class 0A Feature Not Supported  
0A000 FEATURE NOT SUPPORTED feature_not_supported
Class 0B Invalid Transaction Initiation  
0B000 INVALID TRANSACTION INITIATION invalid_transaction_initiation
Class 0F Locator Exception  
0F000 LOCATOR EXCEPTION locator_exception
0F001 INVALID LOCATOR SPECIFICATION invalid_locator_specification
Class 0L Invalid Grantor  
0L000 INVALID GRANTOR invalid_grantor
0LP01 INVALID GRANT OPERATION invalid_grant_operation
Class 0P Invalid Role Specification  
0P000 INVALID ROLE SPECIFICATION invalid_role_specification
Class 21 Cardinality Violation  
21000 CARDINALITY VIOLATION cardinality_violation
Class 22 Data Exception  
22000 DATA EXCEPTION data_exception
2202E ARRAY SUBSCRIPT ERROR array_subscript_error
22021 CHARACTER NOT IN REPERTOIRE character_not_in_repertoire
22008 DATETIME FIELD OVERFLOW datetime_field_overflow
22012 DIVISION BY ZERO division_by_zero
22005 ERROR IN ASSIGNMENT error_in_assignment
2200B ESCAPE CHARACTER CONFLICT escape_character_conflict
22022 INDICATOR OVERFLOW indicator_overflow
22015 INTERVAL FIELD OVERFLOW interval_field_overflow
2201E INVALID ARGUMENT FOR LOGARITHM invalid_argument_for_logarithm
2201F INVALID ARGUMENT FOR POWER FUNCTION invalid_argument_for_power_function
2201G INVALID ARGUMENT FOR WIDTH BUCKET FUNCTION invalid_argument_for_width_bucket_function
22018 INVALID CHARACTER VALUE FOR CAST invalid_character_value_for_cast
22007 INVALID DATETIME FORMAT invalid_datetime_format
22019 INVALID ESCAPE CHARACTER invalid_escape_character
2200D INVALID ESCAPE OCTET invalid_escape_octet
22025 INVALID ESCAPE SEQUENCE invalid_escape_sequence
22P06 NONSTANDARD USE OF ESCAPE CHARACTER nonstandard_use_of_escape_character
22010 INVALID INDICATOR PARAMETER VALUE invalid_indicator_parameter_value
22020 INVALID LIMIT VALUE invalid_limit_value
22023 INVALID PARAMETER VALUE invalid_parameter_value
2201B INVALID REGULAR EXPRESSION invalid_regular_expression
22009 INVALID TIME ZONE DISPLACEMENT VALUE invalid_time_zone_displacement_value
2200C INVALID USE OF ESCAPE CHARACTER invalid_use_of_escape_character
2200G MOST SPECIFIC TYPE MISMATCH most_specific_type_mismatch
22004 NULL VALUE NOT ALLOWED null_value_not_allowed
22002 NULL VALUE NO INDICATOR PARAMETER null_value_no_indicator_parameter
22003 NUMERIC VALUE OUT OF RANGE numeric_value_out_of_range
22026 STRING DATA LENGTH MISMATCH string_data_length_mismatch
22001 STRING DATA RIGHT TRUNCATION string_data_right_truncation
22011 SUBSTRING ERROR substring_error
22027 TRIM ERROR trim_error
22024 UNTERMINATED C STRING unterminated_c_string
2200F ZERO LENGTH CHARACTER STRING zero_length_character_string
22P01 FLOATING POINT EXCEPTION floating_point_exception
22P02 INVALID TEXT REPRESENTATION invalid_text_representation
22P03 INVALID BINARY REPRESENTATION invalid_binary_representation
22P04 BAD COPY FILE FORMAT bad_copy_file_format
22P05 UNTRANSLATABLE CHARACTER untranslatable_character
Class 23 Integrity Constraint Violation  
23000 INTEGRITY CONSTRAINT VIOLATION integrity_constraint_violation
23001 RESTRICT VIOLATION restrict_violation
23502 NOT NULL VIOLATION not_null_violation
23503 FOREIGN KEY VIOLATION foreign_key_violation
23505 UNIQUE VIOLATION unique_violation
23514 CHECK VIOLATION check_violation
Class 24 Invalid Cursor State  
24000 INVALID CURSOR STATE invalid_cursor_state
Class 25 Invalid Transaction State  
25000 INVALID TRANSACTION STATE invalid_transaction_state
25001 ACTIVE SQL TRANSACTION active_sql_transaction
25002 BRANCH TRANSACTION ALREADY ACTIVE branch_transaction_already_active
25008 HELD CURSOR REQUIRES SAME ISOLATION LEVEL held_cursor_requires_same_isolation_level
25003 INAPPROPRIATE ACCESS MODE FOR BRANCH TRANSACTION inappropriate_access_mode_for_branch_transaction
25004 INAPPROPRIATE ISOLATION LEVEL FOR BRANCH TRANSACTION inappropriate_isolation_level_for_branch_transaction
25005 NO ACTIVE SQL TRANSACTION FOR BRANCH TRANSACTION no_active_sql_transaction_for_branch_transaction
25006 READ ONLY SQL TRANSACTION read_only_sql_transaction
25007 SCHEMA AND DATA STATEMENT MIXING NOT SUPPORTED schema_and_data_statement_mixing_not_supported
25P01 NO ACTIVE SQL TRANSACTION no_active_sql_transaction
25P02 IN FAILED SQL TRANSACTION in_failed_sql_transaction
Class 26 Invalid SQL Statement Name  
26000 INVALID SQL STATEMENT NAME invalid_sql_statement_name
Class 27 Triggered Data Change Violation  
27000 TRIGGERED DATA CHANGE VIOLATION triggered_data_change_violation
Class 28 Invalid Authorization Specification  
28000 INVALID AUTHORIZATION SPECIFICATION invalid_authorization_specification
Class 2B Dependent Privilege Descriptors Still Exist  
2B000 DEPENDENT PRIVILEGE DESCRIPTORS STILL EXIST dependent_privilege_descriptors_still_exist
2BP01 DEPENDENT OBJECTS STILL EXIST dependent_objects_still_exist
Class 2D Invalid Transaction Termination  
2D000 INVALID TRANSACTION TERMINATION invalid_transaction_termination
Class 2F SQL Routine Exception  
2F000 SQL ROUTINE EXCEPTION sql_routine_exception
2F005 FUNCTION EXECUTED NO RETURN STATEMENT function_executed_no_return_statement
2F002 MODIFYING SQL DATA NOT PERMITTED modifying_sql_data_not_permitted
2F003 PROHIBITED SQL STATEMENT ATTEMPTED prohibited_sql_statement_attempted
2F004 READING SQL DATA NOT PERMITTED reading_sql_data_not_permitted
Class 34 Invalid Cursor Name  
34000 INVALID CURSOR NAME invalid_cursor_name
Class 38 External Routine Exception  
38000 EXTERNAL ROUTINE EXCEPTION external_routine_exception
38001 CONTAINING SQL NOT PERMITTED containing_sql_not_permitted
38002 MODIFYING SQL DATA NOT PERMITTED modifying_sql_data_not_permitted
38003 PROHIBITED SQL STATEMENT ATTEMPTED prohibited_sql_statement_attempted
38004 READING SQL DATA NOT PERMITTED reading_sql_data_not_permitted
Class 39 External Routine Invocation Exception  
39000 EXTERNAL ROUTINE INVOCATION EXCEPTION external_routine_invocation_exception
39001 INVALID SQLSTATE RETURNED invalid_sqlstate_returned
39004 NULL VALUE NOT ALLOWED null_value_not_allowed
39P01 TRIGGER PROTOCOL VIOLATED trigger_protocol_violated
39P02 SRF PROTOCOL VIOLATED srf_protocol_violated
Class 3B Savepoint Exception  
3B000 SAVEPOINT EXCEPTION savepoint_exception
3B001 INVALID SAVEPOINT SPECIFICATION invalid_savepoint_specification
Class 3D Invalid Catalog Name  
3D000 INVALID CATALOG NAME invalid_catalog_name
Class 3F Invalid Schema Name  
3F000 INVALID SCHEMA NAME invalid_schema_name
Class 40 Transaction Rollback  
40000 TRANSACTION ROLLBACK transaction_rollback
40002 TRANSACTION INTEGRITY CONSTRAINT VIOLATION transaction_integrity_constraint_violation
40001 SERIALIZATION FAILURE serialization_failure
40003 STATEMENT COMPLETION UNKNOWN statement_completion_unknown
40P01 DEADLOCK DETECTED deadlock_detected
Class 42 Syntax Error or Access Rule Violation  
42000 SYNTAX ERROR OR ACCESS RULE VIOLATION syntax_error_or_access_rule_violation
42601 SYNTAX ERROR syntax_error
42501 INSUFFICIENT PRIVILEGE insufficient_privilege
42846 CANNOT COERCE cannot_coerce
42803 GROUPING ERROR grouping_error
42830 INVALID FOREIGN KEY invalid_foreign_key
42602 INVALID NAME invalid_name
42622 NAME TOO LONG name_too_long
42939 RESERVED NAME reserved_name
42804 DATATYPE MISMATCH datatype_mismatch
42P18 INDETERMINATE DATATYPE indeterminate_datatype
42809 WRONG OBJECT TYPE wrong_object_type
42703 UNDEFINED COLUMN undefined_column
42883 UNDEFINED FUNCTION undefined_function
42P01 UNDEFINED TABLE undefined_table
42P02 UNDEFINED PARAMETER undefined_parameter
42704 UNDEFINED OBJECT undefined_object
42701 DUPLICATE COLUMN duplicate_column
42P03 DUPLICATE CURSOR duplicate_cursor
42P04 DUPLICATE DATABASE duplicate_database
42723 DUPLICATE FUNCTION duplicate_function
42P05 DUPLICATE PREPARED STATEMENT duplicate_prepared_statement
42P06 DUPLICATE SCHEMA duplicate_schema
42P07 DUPLICATE TABLE duplicate_table
42712 DUPLICATE ALIAS duplicate_alias
42710 DUPLICATE OBJECT duplicate_object
42702 AMBIGUOUS COLUMN ambiguous_column
42725 AMBIGUOUS FUNCTION ambiguous_function
42P08 AMBIGUOUS PARAMETER ambiguous_parameter
42P09 AMBIGUOUS ALIAS ambiguous_alias
42P10 INVALID COLUMN REFERENCE invalid_column_reference
42611 INVALID COLUMN DEFINITION invalid_column_definition
42P11 INVALID CURSOR DEFINITION invalid_cursor_definition
42P12 INVALID DATABASE DEFINITION invalid_database_definition
42P13 INVALID FUNCTION DEFINITION invalid_function_definition
42P14 INVALID PREPARED STATEMENT DEFINITION invalid_prepared_statement_definition
42P15 INVALID SCHEMA DEFINITION invalid_schema_definition
42P16 INVALID TABLE DEFINITION invalid_table_definition
42P17 INVALID OBJECT DEFINITION invalid_object_definition
Class 44 WITH CHECK OPTION Violation  
44000 WITH CHECK OPTION VIOLATION with_check_option_violation
Class 53 Insufficient Resources  
53000 INSUFFICIENT RESOURCES insufficient_resources
53100 DISK FULL disk_full
53200 OUT OF MEMORY out_of_memory
53300 TOO MANY CONNECTIONS too_many_connections
Class 54 Program Limit Exceeded  
54000 PROGRAM LIMIT EXCEEDED program_limit_exceeded
54001 STATEMENT TOO COMPLEX statement_too_complex
54011 TOO MANY COLUMNS too_many_columns
54023 TOO MANY ARGUMENTS too_many_arguments
Class 55 Object Not In Prerequisite State  
55000 OBJECT NOT IN PREREQUISITE STATE object_not_in_prerequisite_state
55006 OBJECT IN USE object_in_use
55P02 CANT CHANGE RUNTIME PARAM cant_change_runtime_param
55P03 LOCK NOT AVAILABLE lock_not_available
Class 57 Operator Intervention  
57000 OPERATOR INTERVENTION operator_intervention
57014 QUERY CANCELED query_canceled
57P01 ADMIN SHUTDOWN admin_shutdown
57P02 CRASH SHUTDOWN crash_shutdown
57P03 CANNOT CONNECT NOW cannot_connect_now
Class 58 System Error (errors external to PostgreSQL itself)  
58030 IO ERROR io_error
58P01 UNDEFINED FILE undefined_file
58P02 DUPLICATE FILE duplicate_file
Class F0 Configuration File Error  
F0000 CONFIG FILE ERROR config_file_error
F0001 LOCK FILE EXISTS lock_file_exists
Class P0 PL/pgSQL Error  
P0000 PLPGSQL ERROR plpgsql_error
P0001 RAISE EXCEPTION raise_exception
Class XX Internal Error  
XX000 INTERNAL ERROR internal_error
XX001 DATA CORRUPTED data_corrupted
XX002 INDEX CORRUPTED index_corrupted