首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Java Web 表單提交資料庫報錯 ORA-00904: 無效識別字

     編輯:程式設計綜合問答

錯誤堆疊關鍵行

ORA-00904: "BID_BOND_TIME": invalid identifier
...
insert into PM_PROJECT_STEP (..., BID_BOND_TIME, ...) values (..., ?, ...)

根因分析

Hibernate 實體類 PmProjectStep 中包含 bidBondTime 欄位,且映射檔或註解將其對應到資料庫欄位 BID_BOND_TIME。但 資料庫表 PM_PROJECT_STEP 實際不存在該欄位(或拼寫不一致、大小寫差異、Schema 錯誤)。

排查清單

  1. 資料庫執行 DESC PM_PROJECT_STEP 確認欄位清單。
  2. 檢查實體類 @Column(name="BID_BOND_TIME") 或 .hbm.xml 中 <property name="bidBondTime" column="BID_BOND_TIME"/>。
  3. 若欄位已新增但 Hibernate 快取舊 Schema,重啟應用或清理二級快取。
  4. 確認連線的 Schema/User 是否正確(同名表不同 Schema)。

修正

補齊資料庫欄位 ALTER TABLE PM_PROJECT_STEP ADD (BID_BOND_TIME DATE),或移除實體中對應屬性與映射,二擇一保持一致。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved