簡體   English   中英

休眠身份列,但不包含主鍵

[英]Hibernate Identity column but not primary key

我有一個sqlserver 2008 r2數據表,它具有一列autoId int identity(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>

可能有兩個原因,要么是您在DB中沒有足夠的IDENTITY INSERT特權,要么是嘗試在休眠和DB層中設置標識符的機制不匹配。

您可以在休眠定義文件中查看ID生成策略

  1. 在數據庫中,您可以更改為Set IDENTITY_INSERT to "ON"
  2. 選擇其他發電機類別

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM