Last active
May 30, 2024 17:14
-
-
Save thesmart/4921f562eac7217db9bcb8e04ea179a1 to your computer and use it in GitHub Desktop.
A helpful decoding of PostgreSQL error codes to plain text error messages. @see https://www.postgresql.org/docs/14/errcodes-appendix.html
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const errorCodes = { | |
'00000': 'Success: successful_completion', | |
'01000': 'Warning: warning', | |
'0100C': 'Warning: dynamic_result_sets_returned', | |
'01008': 'Warning: implicit_zero_bit_padding', | |
'01003': 'Warning: null_value_eliminated_in_set_function', | |
'01007': 'Warning: privilege_not_granted', | |
'01006': 'Warning: privilege_not_revoked', | |
'01004': 'Warning: string_data_right_truncation', | |
'01P01': 'Warning: deprecated_feature', | |
'02000': 'No Data: no_data', | |
'02001': 'No Data: no_additional_dynamic_result_sets_returned', | |
'03000': 'SQL Statement Not Yet Complete: sql_statement_not_yet_complete', | |
'08000': 'Connection Exception: connection_exception', | |
'08003': 'Connection Exception: connection_does_not_exist', | |
'08006': 'Connection Exception: connection_failure', | |
'08001': 'Connection Exception: sqlclient_unable_to_establish_sqlconnection', | |
'08004': 'Connection Exception: sqlserver_rejected_establishment_of_sqlconnection', | |
'08007': 'Connection Exception: transaction_resolution_unknown', | |
'08P01': 'Connection Exception: protocol_violation', | |
'09000': 'Triggered Action Exception: triggered_action_exception', | |
'0A000': 'Feature Not Supported: feature_not_supported', | |
'0B000': 'Invalid Transaction Initiation: invalid_transaction_initiation', | |
'0F000': 'Locator Exception: locator_exception', | |
'0F001': 'Locator Exception: invalid_locator_specification', | |
'0L000': 'Invalid Grantor: invalid_grantor', | |
'0LP01': 'Invalid Grantor: invalid_grant_operation', | |
'0P000': 'Invalid Role Specification: invalid_role_specification', | |
'0Z000': 'Diagnostics Exception: diagnostics_exception', | |
'0Z002': 'Diagnostics Exception: stacked_diagnostics_accessed_without_active_handler', | |
'20000': 'Case Not Found: case_not_found', | |
'21000': 'Cardinality Violation: cardinality_violation', | |
'22000': 'Data Exception: data_exception', | |
'2202E': 'Data Exception: array_subscript_error', | |
'22021': 'Data Exception: character_not_in_repertoire', | |
'22008': 'Data Exception: datetime_field_overflow', | |
'22012': 'Data Exception: division_by_zero', | |
'22005': 'Data Exception: error_in_assignment', | |
'2200B': 'Data Exception: escape_character_conflict', | |
'22022': 'Data Exception: indicator_overflow', | |
'22015': 'Data Exception: interval_field_overflow', | |
'2201E': 'Data Exception: invalid_argument_for_logarithm', | |
'22014': 'Data Exception: invalid_argument_for_ntile_function', | |
'22016': 'Data Exception: invalid_argument_for_nth_value_function', | |
'2201F': 'Data Exception: invalid_argument_for_power_function', | |
'2201G': 'Data Exception: invalid_argument_for_width_bucket_function', | |
'22018': 'Data Exception: invalid_character_value_for_cast', | |
'22007': 'Data Exception: invalid_datetime_format', | |
'22019': 'Data Exception: invalid_escape_character', | |
'2200D': 'Data Exception: invalid_escape_octet', | |
'22025': 'Data Exception: invalid_escape_sequence', | |
'22P06': 'Data Exception: nonstandard_use_of_escape_character', | |
'22010': 'Data Exception: invalid_indicator_parameter_value', | |
'22023': 'Data Exception: invalid_parameter_value', | |
'22013': 'Data Exception: invalid_preceding_or_following_size', | |
'2201B': 'Data Exception: invalid_regular_expression', | |
'2201W': 'Data Exception: invalid_row_count_in_limit_clause', | |
'2201X': 'Data Exception: invalid_row_count_in_result_offset_clause', | |
'2202H': 'Data Exception: invalid_tablesample_argument', | |
'2202G': 'Data Exception: invalid_tablesample_repeat', | |
'22009': 'Data Exception: invalid_time_zone_displacement_value', | |
'2200C': 'Data Exception: invalid_use_of_escape_character', | |
'2200G': 'Data Exception: most_specific_type_mismatch', | |
'22004': 'Data Exception: null_value_not_allowed', | |
'22002': 'Data Exception: null_value_no_indicator_parameter', | |
'22003': 'Data Exception: numeric_value_out_of_range', | |
'2200H': 'Data Exception: sequence_generator_limit_exceeded', | |
'22026': 'Data Exception: string_data_length_mismatch', | |
'22001': 'Data Exception: string_data_right_truncation', | |
'22011': 'Data Exception: substring_error', | |
'22027': 'Data Exception: trim_error', | |
'22024': 'Data Exception: unterminated_c_string', | |
'2200F': 'Data Exception: zero_length_character_string', | |
'22P01': 'Data Exception: floating_point_exception', | |
'22P02': 'Data Exception: invalid_text_representation', | |
'22P03': 'Data Exception: invalid_binary_representation', | |
'22P04': 'Data Exception: bad_copy_file_format', | |
'22P05': 'Data Exception: untranslatable_character', | |
'2200L': 'Data Exception: not_an_xml_document', | |
'2200M': 'Data Exception: invalid_xml_document', | |
'2200N': 'Data Exception: invalid_xml_content', | |
'2200S': 'Data Exception: invalid_xml_comment', | |
'2200T': 'Data Exception: invalid_xml_processing_instruction', | |
'22030': 'Data Exception: duplicate_json_object_key_value', | |
'22031': 'Data Exception: invalid_argument_for_sql_json_datetime_function', | |
'22032': 'Data Exception: invalid_json_text', | |
'22033': 'Data Exception: invalid_sql_json_subscript', | |
'22034': 'Data Exception: more_than_one_sql_json_item', | |
'22035': 'Data Exception: no_sql_json_item', | |
'22036': 'Data Exception: non_numeric_sql_json_item', | |
'22037': 'Data Exception: non_unique_keys_in_a_json_object', | |
'22038': 'Data Exception: singleton_sql_json_item_required', | |
'22039': 'Data Exception: sql_json_array_not_found', | |
'2203A': 'Data Exception: sql_json_member_not_found', | |
'2203B': 'Data Exception: sql_json_number_not_found', | |
'2203C': 'Data Exception: sql_json_object_not_found', | |
'2203D': 'Data Exception: too_many_json_array_elements', | |
'2203E': 'Data Exception: too_many_json_object_members', | |
'2203F': 'Data Exception: sql_json_scalar_required', | |
'2203G': 'Data Exception: sql_json_item_cannot_be_cast_to_target_type', | |
'23000': 'Integrity Constraint Violation: integrity_constraint_violation', | |
'23001': 'Integrity Constraint Violation: restrict_violation', | |
'23502': 'Integrity Constraint Violation: not_null_violation', | |
'23503': 'Integrity Constraint Violation: foreign_key_violation', | |
'23505': 'Integrity Constraint Violation: unique_violation', | |
'23514': 'Integrity Constraint Violation: check_violation', | |
'23P01': 'Integrity Constraint Violation: exclusion_violation', | |
'24000': 'Invalid Cursor State: invalid_cursor_state', | |
'25000': 'Invalid Transaction State: invalid_transaction_state', | |
'25001': 'Invalid Transaction State: active_sql_transaction', | |
'25002': 'Invalid Transaction State: branch_transaction_already_active', | |
'25008': 'Invalid Transaction State: held_cursor_requires_same_isolation_level', | |
'25003': 'Invalid Transaction State: inappropriate_access_mode_for_branch_transaction', | |
'25004': 'Invalid Transaction State: inappropriate_isolation_level_for_branch_transaction', | |
'25005': 'Invalid Transaction State: no_active_sql_transaction_for_branch_transaction', | |
'25006': 'Invalid Transaction State: read_only_sql_transaction', | |
'25007': 'Invalid Transaction State: schema_and_data_statement_mixing_not_supported', | |
'25P01': 'Invalid Transaction State: no_active_sql_transaction', | |
'25P02': 'Invalid Transaction State: in_failed_sql_transaction', | |
'25P03': 'Invalid Transaction State: idle_in_transaction_session_timeout', | |
'26000': 'Invalid SQL Statement Name: invalid_sql_statement_name', | |
'27000': 'Triggered Data Change Violation: triggered_data_change_violation', | |
'28000': 'Invalid Authorization Specification: invalid_authorization_specification', | |
'28P01': 'Invalid Authorization Specification: invalid_password', | |
'2B000': | |
'Dependent Privilege Descriptors Still Exist: dependent_privilege_descriptors_still_exist', | |
'2BP01': 'Dependent Privilege Descriptors Still Exist: dependent_objects_still_exist', | |
'2D000': 'Invalid Transaction Termination: invalid_transaction_termination', | |
'2F000': 'SQL Routine Exception: sql_routine_exception', | |
'2F005': 'SQL Routine Exception: function_executed_no_return_statement', | |
'2F002': 'SQL Routine Exception: modifying_sql_data_not_permitted', | |
'2F003': 'SQL Routine Exception: prohibited_sql_statement_attempted', | |
'2F004': 'SQL Routine Exception: reading_sql_data_not_permitted', | |
'34000': 'Invalid Cursor Name: invalid_cursor_name', | |
'38000': 'External Routine Exception: external_routine_exception', | |
'38001': 'External Routine Exception: containing_sql_not_permitted', | |
'38002': 'External Routine Exception: modifying_sql_data_not_permitted', | |
'38003': 'External Routine Exception: prohibited_sql_statement_attempted', | |
'38004': 'External Routine Exception: reading_sql_data_not_permitted', | |
'39000': 'External Routine Invocation Exception: external_routine_invocation_exception', | |
'39001': 'External Routine Invocation Exception: invalid_sqlstate_returned', | |
'39004': 'External Routine Invocation Exception: null_value_not_allowed', | |
'39P01': 'External Routine Invocation Exception: trigger_protocol_violated', | |
'39P02': 'External Routine Invocation Exception: srf_protocol_violated', | |
'39P03': 'External Routine Invocation Exception: event_trigger_protocol_violated', | |
'3B000': 'Savepoint Exception: savepoint_exception', | |
'3B001': 'Savepoint Exception: invalid_savepoint_specification', | |
'3D000': 'Invalid Catalog Name: invalid_catalog_name', | |
'3F000': 'Invalid Schema Name: invalid_schema_name', | |
'40000': 'Transaction Rollback: transaction_rollback', | |
'40002': 'Transaction Rollback: transaction_integrity_constraint_violation', | |
'40001': 'Transaction Rollback: serialization_failure', | |
'40003': 'Transaction Rollback: statement_completion_unknown', | |
'40P01': 'Transaction Rollback: deadlock_detected', | |
'42000': 'Syntax Error: syntax_error_or_access_rule_violation', | |
'42601': 'Syntax Error: syntax_error', | |
'42501': 'Syntax Error: insufficient_privilege', | |
'42846': 'Syntax Error: cannot_coerce', | |
'42803': 'Syntax Error: grouping_error', | |
'42P20': 'Syntax Error: windowing_error', | |
'42P19': 'Syntax Error: invalid_recursion', | |
'42830': 'Syntax Error: invalid_foreign_key', | |
'42602': 'Syntax Error: invalid_name', | |
'42622': 'Syntax Error: name_too_long', | |
'42939': 'Syntax Error: reserved_name', | |
'42804': 'Syntax Error: datatype_mismatch', | |
'42P18': 'Syntax Error: indeterminate_datatype', | |
'42P21': 'Syntax Error: collation_mismatch', | |
'42P22': 'Syntax Error: indeterminate_collation', | |
'42809': 'Syntax Error: wrong_object_type', | |
'428C9': 'Syntax Error: generated_always', | |
'42703': 'Syntax Error: undefined_column', | |
'42883': 'Syntax Error: undefined_function', | |
'42P01': 'Syntax Error: undefined_table', | |
'42P02': 'Syntax Error: undefined_parameter', | |
'42704': 'Syntax Error: undefined_object', | |
'42701': 'Syntax Error: duplicate_column', | |
'42P03': 'Syntax Error: duplicate_cursor', | |
'42P04': 'Syntax Error: duplicate_database', | |
'42723': 'Syntax Error: duplicate_function', | |
'42P05': 'Syntax Error: duplicate_prepared_statement', | |
'42P06': 'Syntax Error: duplicate_schema', | |
'42P07': 'Syntax Error: duplicate_table', | |
'42712': 'Syntax Error: duplicate_alias', | |
'42710': 'Syntax Error: duplicate_object', | |
'42702': 'Syntax Error: ambiguous_column', | |
'42725': 'Syntax Error: ambiguous_function', | |
'42P08': 'Syntax Error: ambiguous_parameter', | |
'42P09': 'Syntax Error: ambiguous_alias', | |
'42P10': 'Syntax Error: invalid_column_reference', | |
'42611': 'Syntax Error: invalid_column_definition', | |
'42P11': 'Syntax Error: invalid_cursor_definition', | |
'42P12': 'Syntax Error: invalid_database_definition', | |
'42P13': 'Syntax Error: invalid_function_definition', | |
'42P14': 'Syntax Error: invalid_prepared_statement_definition', | |
'42P15': 'Syntax Error: invalid_schema_definition', | |
'42P16': 'Syntax Error: invalid_table_definition', | |
'42P17': 'Syntax Error: invalid_object_definition', | |
'44000': 'WITH CHECK OPTION Violation: with_check_option_violation', | |
'53000': 'Insufficient Resources: insufficient_resources', | |
'53100': 'Insufficient Resources: disk_full', | |
'53200': 'Insufficient Resources: out_of_memory', | |
'53300': 'Insufficient Resources: too_many_connections', | |
'53400': 'Insufficient Resources: configuration_limit_exceeded', | |
'54000': 'Limit Exceeded: program_limit_exceeded', | |
'54001': 'Limit Exceeded: statement_too_complex', | |
'54011': 'Limit Exceeded: too_many_columns', | |
'54023': 'Limit Exceeded: too_many_arguments', | |
'55000': 'Object Not In Prerequisite State: object_not_in_prerequisite_state', | |
'55006': 'Object Not In Prerequisite State: object_in_use', | |
'55P02': 'Object Not In Prerequisite State: cant_change_runtime_param', | |
'55P03': 'Object Not In Prerequisite State: lock_not_available', | |
'55P04': 'Object Not In Prerequisite State: unsafe_new_enum_value_usage', | |
'57000': 'Operator Intervention: operator_intervention', | |
'57014': 'Operator Intervention: query_canceled', | |
'57P01': 'Operator Intervention: admin_shutdown', | |
'57P02': 'Operator Intervention: crash_shutdown', | |
'57P03': 'Operator Intervention: cannot_connect_now', | |
'57P04': 'Operator Intervention: database_dropped', | |
'57P05': 'Operator Intervention: idle_session_timeout', | |
'58000': 'System Error: system_error', | |
'58030': 'System Error: io_error', | |
'58P01': 'System Error: undefined_file', | |
'58P02': 'System Error: duplicate_file', | |
'72000': 'Snapshot Failure: Snapshot Failure: snapshot_too_old', | |
F0000: 'Configuration File Error: config_file_error', | |
F0001: 'Configuration File Error: lock_file_exists', | |
HV000: 'Foreign Data Wrapper Error: fdw_error', | |
HV005: 'Foreign Data Wrapper Error: fdw_column_name_not_found', | |
HV002: 'Foreign Data Wrapper Error: fdw_dynamic_parameter_value_needed', | |
HV010: 'Foreign Data Wrapper Error: fdw_function_sequence_error', | |
HV021: 'Foreign Data Wrapper Error: fdw_inconsistent_descriptor_information', | |
HV024: 'Foreign Data Wrapper Error: fdw_invalid_attribute_value', | |
HV007: 'Foreign Data Wrapper Error: fdw_invalid_column_name', | |
HV008: 'Foreign Data Wrapper Error: fdw_invalid_column_number', | |
HV004: 'Foreign Data Wrapper Error: fdw_invalid_data_type', | |
HV006: 'Foreign Data Wrapper Error: fdw_invalid_data_type_descriptors', | |
HV091: 'Foreign Data Wrapper Error: fdw_invalid_descriptor_field_identifier', | |
HV00B: 'Foreign Data Wrapper Error: fdw_invalid_handle', | |
HV00C: 'Foreign Data Wrapper Error: fdw_invalid_option_index', | |
HV00D: 'Foreign Data Wrapper Error: fdw_invalid_option_name', | |
HV090: 'Foreign Data Wrapper Error: fdw_invalid_string_length_or_buffer_length', | |
HV00A: 'Foreign Data Wrapper Error: fdw_invalid_string_format', | |
HV009: 'Foreign Data Wrapper Error: fdw_invalid_use_of_null_pointer', | |
HV014: 'Foreign Data Wrapper Error: fdw_too_many_handles', | |
HV001: 'Foreign Data Wrapper Error: fdw_out_of_memory', | |
HV00P: 'Foreign Data Wrapper Error: fdw_no_schemas', | |
HV00J: 'Foreign Data Wrapper Error: fdw_option_name_not_found', | |
HV00K: 'Foreign Data Wrapper Error: fdw_reply_handle', | |
HV00Q: 'Foreign Data Wrapper Error: fdw_schema_not_found', | |
HV00R: 'Foreign Data Wrapper Error: fdw_table_not_found', | |
HV00L: 'Foreign Data Wrapper Error: fdw_unable_to_create_execution', | |
HV00M: 'Foreign Data Wrapper Error: fdw_unable_to_create_reply', | |
HV00N: 'Foreign Data Wrapper Error: fdw_unable_to_establish_connection', | |
P0000: 'PL/pgSQL Error: plpgsql_error', | |
P0001: 'PL/pgSQL Error: raise_exception', | |
P0002: 'PL/pgSQL Error: no_data_found', | |
P0003: 'PL/pgSQL Error: too_many_rows', | |
P0004: 'PL/pgSQL Error: assert_failure', | |
XX000: 'Internal Error: internal_error', | |
XX001: 'Internal Error: data_corrupted', | |
XX002: 'Internal Error: index_corrupted', | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment