2011-08-24 28 views

回答

30

我認爲這意味着你正在嘗試使用IDENTITY ID生成器和未正確配置的表列。它應該是IDENTITY生成器工作的auto_increment列。否則,數據庫不會返回任何生成的ID。

+0

任何人可以添加什麼得到這個錯誤可能意思是在SqlServer(沒有「auto_increment」)屬性 – PandaWood

+0

我得到這個作爲一次性錯誤,其中成千上萬的行被創建和工作,但突然這個錯誤變成了一次或兩次 – PandaWood

3

修復此問題與確保您使用的表的主鍵列具有自動增量集一樣簡單。

0

另一種方法來解決這個問題,是設置AUTO_INCREMENT爲表

0

在這種情況下的ID列,您不必手動創建表。它將默認使用休眠創建。 做出改變或添加在hibernate.cfg.xml >>「hibernate.hbm2ddl.auto」字段設置爲「更新」。

4

我們必須使用下面的查詢

ALTER TABLE document MODIFY COLUMN document_id INT auto_increment 
1

而在數據庫中創建表,你可能已經忘了給自動增量到特定列auto_increment表的id列。

或者

你忘了在Java類註釋爲「生成值」

這將正常工作

相關問題