2012-06-16 87 views
0

我有一個sqlserver 2008 r2數據表,它有一列autoId詮釋標識(1,1),但它不是主鍵,另一列varchar(20)是一個。 問題是:我如何配置hbm文件? 波紋管是我的配置文件,但當我嘗試保存一個實例時出現錯誤。 「當IDENTITY_INSERT設置爲OFF時,無法在表'acct_info'中插入標識列的顯式值。」 休眠標識列但不是主鍵

 <property name="autoId" type="int"> 
      <column name="auto_id" not-null="true" unique="true" /> 
     </property> 

回答

0

可能有兩個原因,要麼你沒有足夠的權限在DB身份INSERT或存在由您要設置休眠和DB標識機制不匹配層。

你可以在休眠定義文件看一下你的ID生成策略

  1. 在DB你可以改變Set IDENTITY_INSERT to "ON"
  2. 選擇一個不同的生成器類
+1

我找到一個解決方案,插入=「false」 謝謝你反正〜! – user1019359