1. 程式人生 > >PostgreSQL錯誤程式碼

PostgreSQL錯誤程式碼

PostgreSQL 伺服器發出的所有訊息都賦予了五個字元的錯誤程式碼,這些程式碼遵循SQL的 "SQLSTATE" 程式碼的習慣。需要知道發生 了什麼錯誤條件的應用通常應該測試錯誤程式碼,而不是檢視文字錯誤資訊。這些錯誤程式碼輕易不會隨著PostgreSQL的版本更新而修改, 並且一般也不會隨著錯誤資訊的本地化而發生修改。
根據標準,錯誤程式碼的頭兩個字元表示錯誤類別,而後三個字元表示在該 類別內特定的條件。因此,那些不能識別特定錯誤程式碼的應用仍然可以從錯誤類別中推斷要做什麼。
Table A-1 裡面列出了 PostgreSQL 7.4 定義的所有錯誤程式碼。(有些實際上目前並沒有使用,但是 SQL 標準定義了。) 錯誤類別也列出在此。對於每個錯誤類別都有個"標準"的錯誤程式碼, 它的最後三個字元是000。這個程式碼只用於那些落在該類別內, 但是沒有賦予任何更準確的程式碼的錯誤條件



Table A-1. PostgreSQL 錯誤程式碼
錯誤程式碼 含義 
00 類 成功完成 
00000 成功完成 
01 類 警告 
01000 警告 
0100C 警告,返回了動態結果 
01008 警告,隱含補齊了零位元位 
01003 警告,在集合函式裡消除了空值 
01004 警告,字串資料在右端截斷 
02 類 沒有資料 --- 按照 SQL99 的要求,這也是警告類 
02000 沒有資料 
02001 返回了沒有附加動態結果集 
03 類 SQL 語句尚未結束 
03000 SQL 語句尚未結束 
08 類 連線例外 
08000 連線例外 
08003 連線不存在 
08006 連線失敗 
08001 SQL 客戶端不能建立 SQL 連線 
08004 SQL 伺服器拒絕建立 SQL 連線 
08007 未知的事務解析度 
08P01 違反協議 

09 類 觸發器動作列外 
09000 觸發的動作例外 
0A 類 不支援特性 
0A000 不支援此特性 
0B 類 非法事務初始化 
0B000 非法事務初始化 
0F 類 指示器例外 
0F000 指示器例外 
0F001 非法的宣告 
0L 類 非法賦權人 
0L000 非法賦權人 
0LP01 非法賦權操作 
0P 類 非法角色宣告 
0P000 非法角色宣告 
21 類 勢違反 
21000 勢違反 
22 類 資料例外 
22000 資料例外 
2202E 陣列元素錯誤 
22021 字元不在準備好的範圍內 
22008 日期時間欄位溢位 
22012 被零除 
22005 賦值中出錯 
2200B 逃逸字元衝突 
22022 指示器溢位 
22015 內部欄位溢位 
22018 型別轉換時非法的字元值 
22007 非法日期時間格式 
22019 非法的逃逸字元 

2200D 非法的逃逸位元組 
22025 非法逃逸序列 
22010 非法指示器引數值 
22020 非法限制值 
22023 非法引數值 
2201B 非法正則表示式 
22009 非法時區顯示值 
2200C 非法使用逃逸字元 
2200G 最相關型別不匹配 
22004 不允許 NULL 值 
22002 NULL 只不能做指示器引數 
22003 數字值超出範圍 
22026 字串資料長度不匹配 
22001 字串資料右邊被截斷 
22011 抽取子字串錯誤 
22027 截斷錯誤 
22024 未結束的 C 字串 
2200F 零長度的字串 
22P01 浮點例外 
22P02 非法文字表現形式 
22P03 非法二進位制表現形式 
22P04 錯誤的 COPY 格式 
22P05 不可翻譯字元 
23 類 違反完整性約束 
23000 違反完整性約束 
23001 違反限制 
23502 違反非空 
23503 違反外來鍵約束 
23505 違反唯一約束 
23514 違反檢查 
24 類 非法遊標狀態 
24000 非法遊標狀態 
25 類 非法事務狀態 
25000 非法事務狀態 
25001 活躍的 SQL 狀態 
25002 分支事務已經啟用 
25008 持有的遊標要求同樣的隔離級別 
25003 對分支事務的不恰當的訪問方式 
25004 對分支事務的不恰當的隔離級別 
25005 分支事務沒有活躍的 SQL 事務 
25006 只讀的 SQL 事務 
25007 不支援混和的模式和資料語句 
25P01 沒有活躍的 SQL 事務 
25P02 在失敗的 SQL 事務中 
26 類 非法 SQL 語句名 
26000 非法 SQL 語句名 
27 類 違反觸發的資料改變 
27000 違反觸發的資料改變 
28 類 非法授權宣告 
28000 非法授權宣告 
2B 類 依然存在依賴的優先順序描述符 
2B000 依然存在依賴的優先順序描述符 
2BP01 依賴性物件仍然存在 
2D 類 非法的事務終止 
2D000 非法的事務終止 
2F 類 SQL 過程例外 
2F000 SQL 過程例外 
2F005 執行的函式沒有返回語句 
2F002 不允許修改 SQL 資料 
2F003 企圖使用禁止的 SQL 語句 
2F004 不允許讀取 SQL 資料 
34 類 非法遊標名 
34000 非法遊標名 
38 類 外部過程例外 
38000 外部過程例外 
38001 不允許包含的 SQL 
38002 不允許修改 SQL 資料 
38003 企圖使用禁止的 SQL 語句 
38004 不允許讀取 SQL 資料 
39 類 外部過程呼叫例外 
39000 外部過程呼叫例外 
39001 返回了非法的 SQLSTATE 
39004 不允許空值 
39P01 違反觸發器協議 
39P02 違反SRF協議 
3D 類 非法資料庫名 
3D000 非法資料庫名 
3F 類 非法模式名 
3F000 非法模式名 
40 類 事務回滾 
40000 事務回滾 
40002 違反完整性約束 
40001 序列化失敗 
40003 不知道語句是否結束 
40P01 偵測到死鎖 
42 類 語法錯誤或者違反訪問規則 
42000 語法錯誤或者違反訪問規則 
42601 語法錯誤 
42501 許可權不夠 
42846 無法進行型別轉換 
42803 分組錯誤 
42830 非法的外來鍵 
42602 非法名字 
42622 名字太長 
42939 保留名字 
42804 資料型別不匹配 
42P18 未決的資料型別 
42809 錯誤的物件型別 
42703 未定義的欄位 
42883 未定義的函式---字元欄位=整數 
42P01 未定義的表 
42P02 未定義的引數 
42704 未定義物件 
42701 重複的欄位 
42P03 重複的遊標 
42P04 重複的資料庫 
42723 重複的函式 
42P05 重複的語句 
42P06 重複的模式 
42P07 重複的表 
42712 重複的別名 
42710 重複的物件 
42702 模糊的欄位 
42725 模糊的函式 
42P08 模糊的引數 
42P09 模糊的別名 
42P10 非法欄位引用 
42611 非法欄位定義 
42P11 非法遊標定義 
42P12 非法的資料庫定義 
42P13 非法函式定義 
42P14 非法語句定義 
42P15 非法模式定義 
42P16 非法表定義 
42P17 非法物件定義 
44 類 違反 WITH CHECK 選項 
44000 違反 WITH CHECK 選項 
53 類 資源不夠 
53000 資源不夠 
53100 磁碟滿 
53200 記憶體耗盡 
53300 太多連線 
54 類 超過程式限制 
54000 超過程式限制 
54001 語句太複雜 
54011 太多欄位 
54023 引數太多 
55 類 物件不在預先要求的狀態 
55000 物件不在預先要求的狀態 
55006 物件在使用中 
55P02 無法修改執行時引數 
57 類 操作者干涉 
57000 操作者干涉 
57014 查詢被取消 
57P01 管理員關機 
57P02 崩潰關機 
57P03 現在無法連線 
58 類 系統錯誤( PostgreSQL 自己內部的錯誤) 
58030 IO 錯誤 
58P01 未定義的檔案 
58P02 重複的檔案 
F0 類 配置檔案錯誤 
F0000 配置檔案錯誤 
F0001 鎖檔案存在 
XX 類 內部錯誤 
XX000 內部錯誤 
XX001 資料崩潰 
XX002 索引崩潰 
-201 (ECPG_TOO_MANY_ARGUMENTS)
這意味著你的命令聲明瞭比命令預期要多的宿主變數(SQLSTATE 07001 或者 07002) 
-202 (ECPG_TOO_FEW_ARGUMENTS)
這意味著你的命令聲明瞭比命令預期要少的宿主變數(SQLSTATE 07001 或者 07002)




Error Code Meaning Condition Name 
Class 00 — Successful Completion  
00000  SUCCESSFUL COMPLETION successful_completion 
Class 01 — Warning  
01000  WARNING warning 
0100C  DYNAMIC RESULT SETS RETURNED dynamic_result_sets_returned 
01008  IMPLICIT ZERO BIT PADDING implicit_zero_bit_padding 
01003  NULL VALUE ELIMINATED IN SET FUNCTION null_value_eliminated_in_set_function 
01007  PRIVILEGE NOT GRANTED privilege_not_granted 
01006  PRIVILEGE NOT REVOKED privilege_not_revoked 
01004  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)  
02000  NO DATA no_data 
02001  NO ADDITIONAL DYNAMIC RESULT SETS RETURNED no_additional_dynamic_result_sets_returned 
Class 03 — SQL Statement Not Yet Complete  
03000  SQL STATEMENT NOT YET COMPLETE sql_statement_not_yet_complete 
Class 08 — Connection Exception  
08000  CONNECTION EXCEPTION connection_exception 
08003  CONNECTION DOES NOT EXIST connection_does_not_exist 
08006  CONNECTION FAILURE connection_failure 
08001  SQLCLIENT UNABLE TO ESTABLISH SQLCONNECTION sqlclient_unable_to_establish_sqlconnection 
08004  SQLSERVER REJECTED ESTABLISHMENT OF SQLCONNECTION sqlserver_rejected_establishment_of_sqlconnection 
08007  TRANSACTION RESOLUTION UNKNOWN transaction_resolution_unknown 
08P01  PROTOCOL VIOLATION protocol_violation 
Class 09 — Triggered Action Exception  
09000  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 20 — Case Not Found  
20000  CASE NOT FOUND case_not_found 
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 
22014  INVALID ARGUMENT FOR NTILE FUNCTION invalid_argument_for_ntile_function 
22016  INVALID ARGUMENT FOR NTH_VALUE FUNCTION invalid_argument_for_nth_value_function 
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 
22023  INVALID PARAMETER VALUE invalid_parameter_value 
2201B  INVALID REGULAR EXPRESSION invalid_regular_expression 
2201W  INVALID ROW COUNT IN LIMIT CLAUSE invalid_row_count_in_limit_clause 
2201X  INVALID ROW COUNT IN RESULT OFFSET CLAUSE invalid_row_count_in_result_offset_clause 
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 
22P03  INVALID BINARY REPRESENTATION invalid_binary_representation 
22P04  BAD COPY FILE FORMAT bad_copy_file_format 
22P05  UNTRANSLATABLE CHARACTER untranslatable_character 
2200L  NOT AN XML DOCUMENT not_an_xml_document 
2200M  INVALID XML DOCUMENT invalid_xml_document 
2200N  INVALID XML CONTENT invalid_xml_content 
2200S  INVALID XML COMMENT invalid_xml_comment 
2200T  INVALID XML PROCESSING INSTRUCTION invalid_xml_processing_instruction 
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 

相關推薦

PostgreSQL錯誤程式碼

PostgreSQL 伺服器發出的所有訊息都賦予了五個字元的錯誤程式碼,這些程式碼遵循SQL的 "SQLSTATE" 程式碼的習慣。需要知道發生 了什麼錯誤條件的應用通常應該測試錯誤程式碼,而不是檢視文字錯誤資訊。這些錯誤程式碼輕易不會隨著PostgreSQL的版本更新而修

PostgreSQL 資料庫錯誤程式碼解釋

PostgreSQL 伺服器發出的所有訊息都賦予了五個字元 的錯誤程式碼, 這些程式碼遵循 SQL 的 "SQLSTATE" 程式碼的習慣。需要知道發生了什麼錯誤條件的應用通常應該測試錯誤程式碼,

PostgreSQL報錯錯誤程式碼(一 警告類)

00000 - > 成功完成 01000 - > 警告 0100C - > 去除動態結果集 01008 - > 隱式填充0bit 0100

VPN無法連線,VPN連線錯誤程式碼及解決方案

  VPN無法連線是大家經常遇到的問題.連線不上VPN一般都會提示一些錯誤程式碼.其實我們可以通過這些錯誤程式碼來解決一些簡單的問題.   本篇文章會給大家簡單的介紹幾個常見的VPN錯誤程式碼以及對應的解決方案.這裡錯誤程式碼解決方案會時時更新.   807錯誤–無法連線到伺服器.請檢查你連

【ORACLE】錯誤程式碼大全

- ORA-00001: 違反唯一約束條件 (.) - - ORA-00017: 請求會話以設定跟蹤事件 - - ORA-00018: 超出最大會話數 - - ORA-00019: 超出最大會話許可數 -

pymysql 1054 錯誤程式碼問題已解決

[Err] 1054 - Unknown column 'xxx' in 'field list' name = input("請您輸入姓名:")addr = input("請您輸入住址:")tel = input("請您輸入電話:") sql= "insert into customer va

我們無法在此裝置上啟用windows,因為無法連線到你的組織的啟用伺服器。請確保已連線到你的組織伺服器,然後重試。如果仍存在啟用問題,請聯絡組織的支援人員,錯誤程式碼:ox80070078

一般Windows都會有一個試用期,試用期到了還沒有啟用系統的話就會提示的。 在win10右下角,出現“啟用windows 轉到“設定”以啟用windows“字樣,看起來就像水印一樣出現在螢幕最頂層的右下角。 百度上已經有一些比較常見的處理方法,在這裡我就不在多做介紹了!我們主要介紹用win

“無法為源卷建立vss快照 錯誤程式碼:2147549183”

2012-12-25 17:16:58 標籤: vmware converter 無法為源卷建立vss快照 錯誤程式碼:2147549183 通過VMware Converter 遷移物理機(windows2003EE sp2)到 esxi5.1 虛擬機

Chrome 錯誤程式碼 ERR UNSAFE PORT

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

wind10系統安裝.net framework 3.5 提示錯誤程式碼:0x80070002

win10的系統上需要安裝net.framework 3.5 或者2.5。按照步驟提示錯誤程式碼:0x80070002, 導致安裝失敗。 解決方式如下: 複製連結: http://download.windowsupdate.com/d/msd

python 錯誤程式碼和異常系統設計

問題來源: 在開發介面和邏輯部分分離開發的時候,為了讓使用者知道當前邏輯執行出錯時,介面上友好提示使用者,怎樣操作去正常執行。這時候就需要要錯誤程式碼設計和所有邏輯API介面返回格式一致。在返回內容格式中,包含錯誤程式碼、錯誤名,錯誤描述以及資料。 現有技術分析: Python的異

使用派克斯軟體連線時最常出現的錯誤程式碼詳解

在使用派克斯軟體時,通常會有各種各樣的錯誤出現而導致連線不上,大家若自己觀察就會發現,凡是連不上的都會出現連不上的錯誤程式碼提示,這就是錯誤資訊,錯誤編碼或兩者同時出現。以下主要是常見的錯誤程式碼資訊的一覽表,也是對出現錯誤的詳解及處理方式。 錯誤程式碼1: 連線伺服器失敗。請確認網路連

關於Oracle資料庫的ORA-00600:內部錯誤程式碼, 引數: [kcratr_scan_lastbwr解決辦法

問題: 第一,最簡單的解決方式: 1、shutdown immediate; 2、startup mount; 3、alter database open; 第二,如果第一步沒解決,再進行下面的操作 1、shutdown immediate; 2、start

如何檢視errno 錯誤程式碼

首先在自己的程式中#include<errno.h> 新增列印errno的語句 printf("errno is: %d\n",errno); 根據errno的值查錯。 errno的不同值的含義: 以下來自linux 2.4.20-18的核心程式碼中的/usr如何檢視errno 錯誤程式

完美解決netkeeper 錯誤程式碼137

  問題描述:檢測到有360wifi、獵豹、共享大師或其他共享軟體,請解除安裝再試。 錯誤原因:使用了第三方wifi軟體 作者在重慶郵電大學; 解決方案: 1. 先登入netkeeper; 2. 開啟工作管理員(ctrl + alt  + del)

ora-00600 內部錯誤程式碼 引數 4415

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

解決SQL Server本地Windows身份無法登入,錯誤程式碼18456問題

今天突然發現本地SQL Server,用Windows身份無法登入,錯誤程式碼18456。最終找到了解決辦法,一句SQL搞定:   CREATE LOGIN [計算機名\Windows帳戶名] FROM WINDOWS   不過要執行這句SQL語句,必須通過SQL Serv

工控隨筆_07_西門子_S7-200.Smart軟體安裝相容性說明和錯誤程式碼:error code hr=0x80070430

  現在西門子的軟體是更新換代太快了,前幾年還是Step 7 Micro/Win,後來又出了S7-200 Smart PLC,理所當然的程式設計除錯軟體也水漲船高,出了新的Step 7  Micro/Win Smart.   我今天安裝了一個測試一下,安裝後介面與原來的S7-

ORA-00600: 內部錯誤程式碼, 引數: [kcm_headroom_warn_1], [], [], [], [], [], [], [], [], [], [], []

SQL*Plus: Release 11.2.0.4.0 Production on 星期三 1月 1 08:53:48 2003 Copyright (c) 1982, 2013, Oracle. All rights reserved. idle> startupORACLE 例程已經啟動。

【解決方案】車導航 錯誤程式碼001 的維修

  我的車載導航安裝兩年,半年前倒車出現一次“錯誤程式碼001”,如下圖 半年後出現頻率越來越高,直致每次都要出現“錯誤程式碼001”及自己重啟,目前沒辦法“湊合著用”,本人是軟體科班但也學了幾年嵌入式,電子學也略知一二,看個電路圖、時序圖寫點stm32,wince,uclinux嵌入程式碼與