DB2 sqlCode错误信息
DB2錯誤信息(按sqlcode排序)
sqlcode sqlstate 說明
000 00000 SQL語句成功完成
01xxx SQL語句成功完成,但是有警告
+012 01545 未限定的列名被解釋為一個有相互關系的引用
+098 01568 動態SQL語句用分號結束
+100 02000 沒有找到滿足SQL語句的行
+110 01561 用DATA CAPTURE定義的表的更新操作不能發送到原來的子系統
+111 01590 為2型索引設置了SUBPAGES語句
+117 01525 要插入的值的個數不等于被插入表的列數
+162 01514 指定的表空間被置為檢查掛起狀態
+203 01552 使用非唯一的名字來解決命名的限定列
+204 01532 命名的對象未在DB2中定義
+206 01533 命名的列不在SQL語句中指定的任何表中存在
+218 01537 因為SQL語句引用一個遠程對象,不能為該SQL語句執行EXPLAIN
+219 01532 命名的PLAN TABLE不存在
+220 01546 不正確定義PLAN TABLE,檢查命名列的定義
+236 01005 SQLDA中的SQLN的值至少應于所描述的列的個數一樣大
+237 01594 至少有一個被描述的列應該是單值類型,因此擴展的SQLVAR條目需要另外的空間
+238 01005 至少應有一個被描述的列是一個LOB,因此擴展的SQLVAR條目需要另外的空間
+239 01005 至少應有一個被描述的列應是單值類型,因此擴展的SQLVAR條目需要另外的空間
+304 01515 該值不能被分配給宿主變量,因為該值不再數據類型的范圍之內
+331 01520 不能被翻譯的字符串,因此被設置為NULL
+339 01569 由于與DB2 2.2版本的子系統連接,所以可能存在字符轉換問題
+394 01629 使用優化提示來選擇訪問路徑
+395 01628 設置了無效的優化提示,原因代碼指定了為什么,忽略優化提示
+402 01521 未知的位置
+403 01522 本地不存在CREAT ALIAS對象
+434 01608 在DB2未來發布的版本中將不支持指定的特性,IBM建議你停止使用這些特性
+445 01004 值被CAST函數截取
+462 01Hxx 由用戶定義的函數或存儲過程發出的警告
+464 01609 命名的存儲過程超出了它可能返回的查詢結果集的個數限制
+466 01610 指定由命名的存儲過程返回的查詢結果集的個數。成功完成
+494 01614
由存儲過程返回的結果集的個數超過了由ASSOCIATE LOCATORS語句指定的結果集定
位器的個數
+495 01616 因為倒臺SQL的成本估算超出了在ELST中指定的警告閥值,所以發出警告
+535 01591 請求一個主健的定位更新,或請求一個使用自我引出 約束的表的刪除操作
+541 01543 命名外健是一個重復的引用約束
+551 01548 命名的授權ID缺少在命名的DB2對象上執行命名操作的權限
+552 01542 命名的授權ID缺少執行命名操作的權限
+558 01516 已經被授權該PUBLIC,因此WITH GRANT OPTION不可用
+561 01523 對ALTER REFERENCES INDEX 和TRIGGER特權,PUBLIC AT ALL LOCATION無效
+562 01560 因為GRANTEE已經擁有這些特權,所以一個或更多的特權被忽略
+585 01625 模式名指定了不止一次
+599 01596 沒有為長字符數據類型(BLOB,CLOB和DBCLOB)建立比較函數
+610 01566
由于建立了一個指定為DEFER YES的索引,指定的對象處于PENDING狀態,或者因為
使用了ALTER INDEX改變關鍵值的范圍,所以指定的對象處于PENDING狀態
+625 01518 因為刪除了主健索引,所以表定義被標注為不完整
+626 01529 刪除了加強UNIQUE約束的索引,唯一性不在被加強
+645 01528 因為建立的索引中沒有包含NULL,所以WHERE NOT NULL被忽略
+650 01538 不能更改或者建立已命名的表為從屬表
+653 01551 在已指定的分區表空間中尚沒有建立指定的分區索引,所以分區索引不可得
+655 01597
為CREATE或ALTER STOGROUP語句指定特定或者非特定的卷ID,在DB2較新發布的
版本中(版本6以后)將不再支持他們
+658 01600 當建立目錄索引時,不能指定SUBPAGES語句,SUBPAGES將被忽略,并缺省為1
+664 01540 分區索引的限制關鍵字超出了最大值
+738 01530 已命名的對象的更改可能像只讀系統中對象的改變要求一樣
+799 0157 SET語句中引用的特定寄存器不存在,將忽略 SET請求
+802 01519 數據溢出或者因除法異常而引起的數據異常錯誤
+806 01553 ISOLATION(RR)與LOCKSIZE PAGE 沖突
+807 01554 由于十進制乘法導致溢出
+863 01539 連接成功,但是只支持SBCS
+2000 56094 SUBPAGES不等于1的1型索引不能成為數據共享環境中的緩沖池組依賴者
+2002 01624 因為指定的緩沖池不允許超高速緩存,GNPCACHE指定被忽略
+2007 01602 因為DB2子系統的參數禁用“提示(hiats)”所以不能指定優化提示
+30100 01558 分布式協議錯誤被檢測到,提供原來的SQLCODE和SQLSTATE
-007 42601 SQL語句中由非法字符
-010 42603 字符串常量非正常終止;檢查到有遺漏的引號標志
-029 42601 需要INTO語句
-060 42815 某特定數據類型的長度或者標量規范無效
-084 42612 不能執行SQL語句,因為該語句對動態SQL無效或者對OS/390的DB2無效
-097 42601
在單位類型、用戶自定義的函數以及過程中不能使用帶有CAST的LONG VARCHAR或LONG
VARGRAPHIC
-101 54001 SQL語句超出了已確定的DB2限制:例如,表的數目太多,語句中的字節太多
-102 54002 字符串常量太長
-103 42604 無效數學文字
-104 42601 SQL語句中遇到非法符號
-105 42604 無效的字符串格式;通常引用一個格式不正確的圖形字符串
-107 42622 對象名太長
-108 42601 RENAME語句中指定的名字有錯誤,不能使用限定詞
-109 42601 指定了無效語句;例如CREATE VIEW不能包含ORDER BY 語句
-110 42606 遇到了無效的十六進制的文字
-111 42901 指定的列函數沒有給出列名
-112 42607 無效的列函數語法;列函數不能運行與其他的列函數之上
-113 42602 遇到無效字符
-114 42961 該語句的位置名稱必須與當前服務器匹配,但是卻沒有匹配
-115 42601 因為比較運算符沒有伴著一個表達式或者列表,遇到了無效謂詞
-117 42802 待插入的數值的個數于被插入的行中的列數不相等
-118 42902 數據修改語句(UPDATE或DELETE)和FROM語句中的表和視圖命名不合法
-119 42803 HAVING語句中的列的列表與GROUP BY語句中的列列表不匹配
-120 42903 不允許WHERE語句、SET語句、VALUES語句或者SET ASSIGNMENT語句引用列函數
-121 42701 在INSERT或UPDATE語句中,某一列被非法引用了兩次
-122 42803 非法使用了列函數。因為沒有用于一個列函數的所有列不再GROUP BY語句中
-123 42601 特定位置的參數必須是一個常數或者一個關鍵詞
-125 42805 ORDER BY語句中指定了無效數字,該數字要么小于1要么大于選定的列數
-126 42829 不能為一個UPDATE語句指定ORDER BY語句
-127 42905 在子選擇中DISTINCT只能指定一次
-128 42601 SQL謂詞中NULL使用不當
-129 54004 SQL語句中包含的表多于15個
-130 22019 ESCAPE語句必須為一個字符
22025 無效的ESCAPE模式
-131 42818 LIKE謂詞只能用于字符數據
-132 42824 LIKE語句、ESCAPE語句、LOCATE函數或POSSTR函數中有無效運算對象
-133 42906 無效相關子查詢引用
-134 42907 大于255字節的列被不正確使用
-136 54005 排序關鍵字的長度大于4000字節
-137 54006 被連接的字符串太大;字符的最大值為32767;圖形的最大值為16382
-138 22011 SUBSTR列函數的第二個或第三個操作符無效
-142 42612
不支持的SQL語句。該語句可能在另外的RDBMS上有效,也有可能在其他的上下文中有效
(例如,VALUES只能在觸發器中出現)
-144 58003 指定的段號無效
-147 42809 某一源函數不能更改。要改變源函數,必須刪除該源函數并重新建立他
-148 42809
RENAME和ALTER無法執行。RENAME不能對視圖或者活動RI.ST表重新命名。ALTER不能用
于改變列的長度,因為該列參與了RI、一個用戶退出程序、全局的臨時表或打開DATA
CAPTURE CHANGES表的列
-150 42807 觸發活動的INSERT,UPDATE或DELETE語句中指定了無效的視圖更新或一個無效的轉換表
-151 42808 試圖更新一個不可更新的視圖的列、一個DB2 CATALOG表的列或者一個ROWID列
-152 42809 DROP CHECK試圖刪除一個參照約束,或者DROP FOREIGN試圖刪除一個檢查約束
-153 42908
無效的視圖建立請求,必須為旋轉列表中列出的列出的未命名的列或者重復的列提供一
個名字
-154 42909 不能用UNION、UNION ALL或者一個遠程表建立視圖
-156 42809
在視圖上建立索引是非法的,或者在ALTER TABLE,CREATE TRIGGER,DROP TABLE或
LOCK TABLE語句上指定一個不是表的其他對象這是無效的
-157 42810 必須在FOREIGN KEY語句中指定一個表名
-158 42811 視圖的列和選擇列表中的列不相匹配
-159 42089 無效DROP或COMMENT ON語句
-160 42813 對該視圖的WITH CHECK OPTION無效
-161 44000 正被更新的視圖WITH CHECK OPTION語句使得這行不能被插入或更新
-164 42502 用戶沒有建立這個視圖的權限
-170 42605 標量函數指定了無效的參數個數
-171 42815 標量函數指定了無效的數據類型長度或者無效數值
-173 42801 在非只讀型的游標上不能指定隔離級別UR
-180 22007 DATE、TIME、TIMESTAMP值的字符串表示法的語法不對
-181 22001 不是有效的DATE、TIME、TIMESTAMP值
-182 42816 在算術表達式中的日期/時間值無效
-183 22008 在算術表達式中返回的日期/時間值的結果不在有效值的范圍內
-184 42610 沒有正確使用日期/時間值的參數標記
-185 57008 沒有定義本定的日期/時間出口
-186 22505 改變本定的日期/時間出口引發這個程序的長度無效
-187 22506 MVS返回無效的當前日期/時間
-188 22503 字符串表示無效
-189 22522 指定的編碼字符集的ID無效或沒有定義
-190 42837 不能象所設定的那樣改變(ALTER)列。只能改變(ALTER)VARCHAR列的長度
-191 22504 字符串中包含了無效的混合數據
-197 42877 當兩個或多個表被聯合在一起排序時,限定的列名不能在ORDER BY語句中使用
-198 42617 試圖對空的字符串發布一個PREPARE或EXECUTE IMMEDIATE語句
-199 42601 SQL語句中使用了非法關鍵詞
-203 42702 模糊列引用
-204 42704 沒有定義的對象名
-205 42703 指定的表的列名無效
-206 42703 列名沒有在FROM語句所引用的任何表中,或者沒有在定義觸發器所在的表中
-208 42707 不能ORDER BY指定列,應為該列不在選擇列表中
-212 42712 指定的表名在觸發器中不允許多次使用,只能使用一次
-214 42822 DISTINCT、ORDER BY 引起的無效表達式
-219 42704 因為PLAN_TABLE不存在,EXPLAIN無法執行
-220 55002 遇到無效的PLAN_TABLE列
-221 55002 如果為PLAN_TABLE定義了可供選擇的列,那么,必須定義所有的列
-229 42708 指定的現場找不到
-240 428B4 LOCK TABLE語句的PART子句無效
-250 42718 沒有定義本地位置名
-251 42602 記號無效
-300 22024 宿主變量或參數中的字符串不是以NULL為終止
-301 42895 無效的宿主變量數據類型
-302 22001 輸入的變量值對指定的列無效
22003 輸入的變量值對指定的列而言太大
-303 42806 因為數據類型不兼容,不能分配數值
-304 22003 因為數據超出了范圍,不能分配數值
-305 22002 沒有NULL指示符變量
-309 22512 因為引用的宿主變量被設置成NULL,所以謂詞無效
-310 22501 十進制的宿主變量或參數包含非十進制數據
-311 22501 輸入的宿主變量長度無效,或者時負值或者太大
-312 42618 沒有定義宿主變量或者宿主變量不可用
-313 07001 宿主變量的個數不等于參數標識的個數
-314 42714 模糊的宿主變量引用
-327 22525 在最后分區的關鍵字范圍內,不能插入行
-330 22021 不能成功的翻譯字符串
-331 22021 字符串不能分配到宿主變量,因為其不能成功的被翻譯
-332 57017 不能為兩個命名的編碼字符集的ID定義翻譯規則
-333 56010 子類型無效導致翻譯失敗
-338 42972 ON語句無效,必須引用連接的列
-339 56082 訪問DB2 2.2版本的子系統被拒絕,原因時ASCII到EBCDIC翻譯不能進行
-350 42962 無效的大對象規范
-351 56084 SELECT列表中有不支持的數據類型
-352 56084 輸入列表中有不支持的數據類型
-355 42993 LOB列太大,以至不能被記錄在日志中
-372 428C1 每個表只允許有一個ROWID列
-390 42887 在上下文中指定的函數無效
-392 42855 自從前一次FETCH以來,指定游標的SQLDA已被不恰當的改變
-396 38505 在最后的訪問過程中,視圖執行SQL語句
-397 428D3 在某一列上不恰當的指定了GENERATED因為該列不是ROWID數據類型
-398 428D2 為某一個宿主變量請求LOCATOR,但是該宿主變量不是一個LOB
-399 22511 在INSERT語句中為ROWID列指定的值無效
-400 54027 在DB2編目中定義的用戶自定義索引不能超過100個
-401 42818 算術操作符或比較操作符的操作對象不是兼容的
-402 42819 算術函數不能用于字符或日期時間數據
-404 22001 SQL語句指定的字符串太長
-405 42820 數值文字超出了范圍
-406 22003 計算出的或者倒出的數值超出了范圍
-407 23502 不能把NULL值插到定義為NOT NULL的列中
-408 42821 數值不能被更新或插入,因為他與列的數據類型不兼容
-409 42607 COUNT函數指定的運算對象無效
-410 42820 浮點文字筆30個字符的最大允許長度長
-411 56040 CURRENT SQLID使用無效
-412 42823 在子查詢的選擇列表中遇到了多個列
-413 22003 當轉換為一個數字型數據類型時,數據溢出
-414 42824 LIKE謂詞不能運行于用數字或日期時間類型定義的列
-415 42825 為UNION操作指定的選擇列表不是聯合兼容的
-416 42907 包含UNION操作符的SQL語句不允許有長的字符串列
-417 42609 兩參數標識符作為運算對象被指定在同一謂詞的兩邊
-418 42610 參數標識符使用無效
-419 42911 十進制除法無效
-420 22018 字符串自變量值不符合函數的要求
-421 42826 UNION操作的選擇列表中沒有提供相同數目的列
-423 0F001 為LOB或結果集定位器指定的值無效
-426 2D528 在不允許更新的應用服務器不允許執行COMMIT語句
-427 2D529 在不允許更新的應用服務器不允許執行ROLLBACK語句
-430 38503 在用戶自定義的函數或存儲過程中遇到了錯誤
-433 22001 指定的值太長
-435 428B3 無效的應用定義的SQLSTATE
-438 xxxxx 使用了RAISE_ERROR函數的應用發出了一個錯誤
-440 42884 存儲過程或用戶自定義函數的參數列表參數個數于預期的個數不匹配
-441 42601 與標量函數一起使用DISTINCT或ALL是不正確的用法
-443 42601 指定的外部函數返回錯誤的SQLSTATE
-444 42724 與被稱為存儲過程或用戶自定義函數有關的程序不能找到
-449 42878
對存儲過程或用戶自定義的 函數,CREATE或ALTER語句不正確(缺失EXTERNAL NAME 子
句)
-450 39501 存儲過程或用戶自定義函數寫入存儲器的值超過了參數聲明的長度
-451 42815 CREATE FUNCTION中指定了不正確的數據類型
-453 42880 用戶自定義函數中的RETURNS語句無效
-454 42723 指定的函數識別標記與已存在的另一函數的識別標記沖突
-455 42882 模式名不比配
-456 42710 為用戶自定義函數指定的函數名已經存在
-457 42939 用戶自定義函數或用戶自定義類型正試圖使用系統中定義的函數或者類型所用的名稱
-458 42883 沒有找到函數
-463 39001 特定的外部例程返回無效的SQLSTATE
-469 42886 參數定義為OUT或INOUT的CALL語句必須提供宿主變量
-470 39002 指定了NULL參數,但是該例程卻不支持NULL
-471 55023 存儲過程或用戶自定義函數失敗:提供原因代碼
-472 24517 外部的函數程序使游標處于打開狀態
-473 42918 用戶自定義數據類型命名不能和系統定義的數據類型一樣
-475 42866 結果類型不能被轉換成RETURNS類型
-476 42725 在其模式中該函數不是獨一無二的
-478 42893 不能DROP或REVOKE特定的對象,因為其他對象依賴于該對象
-480 51030 直到存儲過程已經被CALL后,DESCRIBE PROCEDURE和ASSOCIATE LOCATORS才能被發布
-482 51030 存儲過程不返回到任何一個定位器
-483 42885 CREATE FUNCTION語句中的參數個數與源函數中的參數個數不匹配
-487 38001 選擇了NO SQL選項建立指定的存儲過程或用戶自定義函數,但卻視圖發布SQL語句
CREATE FUNCTION語句無效,因為該語句沒有RETURNS語句或者因為該語句沒有指定有效
-491 42601 的SOURCE或者EXTERNAL語句
-492 42879 指定函數的指定參數的個數有錯誤
-495 57051 語句的估計處理器成本超出了資源限制
-496 51033 語句無法執行,因為當前服務器與調用存儲過程的服務器不同
指定的數據庫超過了32767 OBID的上限,或者CREATE DATABASE語句使之達到了32511
-497 54041 DBID的上限
-499 24516 指定的游標已被分配到結果集,該結果集來自已經指定的存儲過程
-500 24501 因為連接被破壞,WITH HOLD游標被關閉
-501 24501 在試圖獲取數據或關閉一個游標前必須打開一個游標
-502 24502 在沒有關閉游標前不能再次打開游標
因為列在游標的FOR UPDATE OF語句中沒有被指定,該游標用于獲取該列,所以不能更
-503 42912 新該列
-504 34000 不能引用一個游標,因為他不是定義到程序里的
-507 24501 在試圖更新或者刪除WHERE CURRENT OF前,必須打開游標
-508 24504 因為被引用的游標當前不是處于數據行上,所以不能被更新或刪除
除了在游標上指定的那個表(該表由WHERE CURRENT OF語句引用的)以外,再也不能從
-509 42827 別的表上更新數據
-510 42828 表或視圖不能被修改
-511 42829 對不可修改的表或視圖,FOR UPDATE OF語句無效
-512 56023 對遠程對象的無效引用
-513 42924 一個別名不能再被定義成另外的別名
-514 26501 游標尚沒有被準備
-516 26501 試圖描述未準備好的SQL語句
-517 07005 因為SQL語句尚沒有準備好,游標無效
-518 07003 試圖執行尚沒有準備好的SQL語句
-519 24506 當為游標的SQL語句發布一個準備語句是,游標不能是打開的
-525 51015 不能在已指定的程序包中執行SQL語句,因為在綁定時間內該程序包無效
-526 42995 在給定的上下文中,不能使用全局的臨時表
-530 23503 對特定的約束名指定了無效的外健值
從版本5開始,父關鍵字的多行更新將試圖刪除一個外關鍵字依賴的父關鍵字值,在版
-531 23504 本5以前,當引用主關鍵值外健值當前存在時,試圖更新該主健值
-532 23504 刪除操作違反了已指定的參照約束
-533 21501 多行插入無效,試圖將多行插到自我引用的表中
-534 21502 可改變主健列值的更新語句不能在同一時刻用于更新多行
當從自我引用表中刪除數據或者更新主健列時,不能指定WHERE CURRENT OF。不是版本
-535 21502 5的子系統才調用該代碼
-536 42914 因為某一特定表的參照約束存在,所以刪除語句無效
-537 42709 在外健語句或主健語句的規范中,每個列的出現不能多于一次
-538 42830 無效的外健;不符合引用的表沒有主健
-539 42888 不能定義外健,因為被引用的表沒有主健
表定義不完整,直到為主健建立了唯一索引或UNIQUE語句、或者包含GENERATED BY
-540 57001 DEFAULT屬性的ROWID列
-542 42831 可以為空的列不允許作為主健的一部分包含在內
因為該表是指定了SET NULL刪除規則的參照約束的父表而且檢查約束不允許NULL,所以
-543 23511 DELETE不能發生
-544 23512 不能用ALTER添加檢查約束,因為已存在的某行與該檢查約束沖突
-545 23513 INSERT或者UPDATE導致檢查約束沖突
-546 42621 在CREATE或ALTER TABLE中指定的檢查約束無效
-548 42621 因為指定的列而引起的檢查約束無效
-549 42509 DYNAMICRULES(BIND)計劃或程序包的無效SQL語句
-551 42501 用戶試圖對不擁有權限的特定的對象進行操作,或者表不存在
-552 42502 用戶試圖執行未被授權的操作
-553 42503 不能指定CURRENT SQLID,因為用戶尚沒有被允許改變那個ID
-554 42502 不能對你本身賦予一個權限
-555 42502 不能對你本身撤銷一個權限
-556 42504 不能撤銷用戶沒有擁有的權限
-557 42852 指定了不一致的授予或撤銷關鍵詞
-558 56025 為授予或撤銷語句指定了無效的語句(一個或一組)
-559 57002 DB2權限機制已經禁用,授予或者撤銷不能被發布
-567 42501 指定的權限ID缺少對指定的程序包的綁定權限
-571 25000 不允許多點更新
-573 42890 不能定義參照約束,因為已指定的父表中在指定的列上沒有唯一健
-574 42864 指定的缺省與列定義沖突
試圖修改用戶自定義函數中的數據或者存儲過程中的數據,但這些對象的建立沒有選擇
-577 38002 MODIFIES SQL DATA選項
試圖修改用戶自定義函數中的數據或者存儲過程中的數據,但這些對象的建立沒有選擇
-579 38004 READ SQL DATA選項,也沒有選擇MODIFIES SQL DATA選項
-580 42625 CASE表達式中的結果表達式不能都是空的
-581 42804 CASE表達式中的結果表達式為不兼容的數據類型
-582 42625 SEARCHED-WHEN-CLAUSE中的查找條件指定了一個限定的、IN或EXISTS謂詞
-583 42845 指定的函數失敗,因為他不是決定性的,或者可能有外部動作
-585 42732 在當前路徑中模式名不止一次出現
-586 42907 CURRENT PATH專用寄存器在長度上不能超過254字符
-587 428C6 項目引用的列表必須是同一個家族
-590 42734 在命名的存儲過程或用戶自定義的函數中的參數必須是獨一無二的
-592 42510 沒有授權權限,讓你在WLM環境中建立的存儲過程或者用戶自定義函數
-601 42710 試圖創建(或重命名)已經存在的對象
-602 54008 CREATE INDEX語句中指定的列太多
-603 23515 因為發現有重復值,所以不能建立唯一的索引
-604 42611 在CREATE或ALTER TABLE語句中的為數據類型指定的長度、精度以及標度無效
指定的INSERT、UPDATE或DELETE語句不能被發布,應為這些語句對DB2 CATLOG表執行寫
-607 42832 操作
-611 53088 當LOCKSIZE是TABLE或者TABLESPACE時,LOCKMAX必須為0
-612 42711 在同一個表、索引或試圖中不允許有重復列名
-613 54008 主健或UNIQUE約束太長或者包含了太多的列
-614 54008 已經超過了索引的內部健長度的最大長度(255)限制
-615 55006 不能刪除這個程序包,因為該程序包目前正在執行
總結
以上是生活随笔為你收集整理的DB2 sqlCode错误信息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: http协议原理
- 下一篇: Java最新JDK和API下载(持续同步