首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle JDBC 常見 SQLException 錯誤碼對照表:ORA-00904 到 ORA-01476 中英對照與排查指引

     編輯:Oracle 資料庫基礎

Java 應用調用 Oracle 時拋出 java.sql.SQLException,錯誤碼映射至 ORA-XXXXX。本文匯總 30+ 高頻錯誤碼,提供中文含義、典型觸發場景、排查方向,開發、測試、運維必備速查表。

高頻錯誤碼對照表

錯誤碼中文含義典型場景排查方向
ORA-00904無效列名SQL 拼寫錯誤、列不存在、別名引用錯誤檢查列名大小寫、雙引號、Schema 前綴
ORA-00942表或視圖不存在表名錯誤、權限不足、Synonym 失效SELECT * FROM all_tables WHERE table_name=... 驗證
ORA-01400不能插入 NULL非空列插入 NULL、隱式轉換失敗檢查 DDL NOT NULL、默認值、觸發器
ORA-00936缺少表達式SELECT 列表為空、子查詢語法錯誤補全 SELECT 列、檢查括號匹配
ORA-00933SQL 命令未正確結束多餘分號、關鍵字拼寫、子查詢未閉合簡化 SQL 逐步驗證
ORA-01722無效數字字符串隱式轉數字失敗、數據髒值TO_NUMBER 顯式轉換、數據清洗
ORA-06530訪問空對象屬性未初始化 OBJECT TYPE 變量直接賦值先構造實例 obj := type_name(...)
ORA-06592CASE 分支未匹配CASE 無 ELSE 且 WHEN 全不滿足添加 ELSE 分支或覆蓋所有分支
ORA-06531集合未初始化嵌套表/VARRAY 未構造直接操作先 coll := type_name() 初始化
ORA-06511游標已打開重複 OPEN 同一游標、FOR 循環中隱式 OPEN先 CLOSE、使用隱式游標 FOR LOOP
ORA-00001唯一約束違反主鍵/唯一索引重複值業務邏輯去重、MERGE/UPSERT
ORA-01001無效游標關閉未打開游標、游標超出作用域檢查 OPEN/FETCH/CLOSE 配對
ORA-01017登錄被拒用戶名/密碼錯誤、密碼過期、帳號鎖定驗證憑證、檢查 PROFILE 策略
ORA-01403未找到數據SELECT INTO 返回 0 行改用游標或異常捕獲 NO_DATA_FOUND
ORA-01012未登錄會話已斷開發起 DB 調用連接池驗證查詢、重連機制
ORA-06501程序內部錯誤PL/SQL 引擎 Bug、內存損壞收集 Trace、升級 Patch Set
ORA-06504行類型不匹配游標變量賦值類型不兼容對齊強/弱類型游標定義
ORA-30625SELF 為空調用 Member Method 於 NULL 實例調用前非空判斷
ORA-06500存儲錯誤PGA 耗盡、內存碎片優化集合大小、增加 PGA_AGGREGATE_TARGET
ORA-06533下標超出集合計數索引 > 集合元素數邊界檢查 i <= coll.COUNT
ORA-06532下標超出合法範圍負數索引、過大索引索引範圍驗證
ORA-01410無效 ROWID字符串轉 ROWID 失敗使用 DBMS_ROWID 包驗證
ORA-00051資源等待超時鎖等待、I/O 擁塞V$SESSION_WAIT、V$LOCK 分析
ORA-01422返回超過一行SELECT INTO 返回多行加 LIMIT/ROWNUM、改用游標
ORA-06502值錯誤字符串截斷、精度溢出、轉換失敗變量長度/精度對齊、顯式轉換
ORA-01476除零錯誤分母為 0NULLIF(denom,0)、業務邏輯防護

排查最佳實踐

  • 開啟 JDBC 追蹤:-Doracle.jdbc.Trace=true 定位具體 SQL
  • 統一異常處理框架:捕獲 SQLException → 記錄 Error Code、SQL State、完整堆棧、綁定變量值
  • 建立錯誤碼知識庫:關聯業務模塊、發生頻率、修復方案,定期評審
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved