hibernate 主鍵生成策略

2021-08-27 08:59:22 字數 916 閱讀 6569

1.assigned

1).可跨資料庫,int型別,資料庫可設定自動增長列,但是可不賦值,也可賦值,但賦值後書庫所增加的值還是自動增長列的值

2.identity

1).資料有資料庫生成。int型別,但是主鍵必須是自動增長列,

支援其他的資料庫出來oracle因為oracle只有序列

3.sequence

1).有資料庫提供的sequence生成主鍵,但是由於每次自增所形成的主鍵

不一致,所以資料也會不是乙個乙個的增加的,

因此我們需要使用同乙個序列化,設定:

abc

4.increment

1).每次從hibernate取出最大的主鍵,(與資料庫互動兩次),

每次增量1

5.uuid

1).十六進製制的資料

6.guid

1).先從資料庫中獲取uuid()在賦值給id

7.native

1).完美結合個資料庫,由hibernate自行判斷資料是

屬於sequence的主鍵型別還是identity的主鍵型別,

注:使用native時hibernate缺省會去查詢oracle中的hibernate_sequence序列。 

如果oracle中沒有該序列,連oracle資料庫時會報錯。

8、hilo:

通過高低位合成id,先建表hi_value,再建列next_value。必須要有初始值。

high_val

nextval5  

9、sequencehilo:

同過高低位合成id,建乙個sequence序列,不用建表。

high_val_seq5  

Hibernate主鍵生成策略

hibernate主鍵生成策略 1 自動增長identity 適用於mysql db2 ms sql server,採用資料庫生成的主鍵,用於為long short int型別生成唯一標識 使用sql server 和 mysql 的自增欄位,這個方法不能放到 oracle 中,oracle 不支援...

Hibernate主鍵生成策略

1 自動增長identity 適用於mysql db2 ms sql server,採用資料庫生成的主鍵,用於為long short int型別生成唯一標識 使用sql server 和 mysql 的自增欄位,這個方法不能放到 oracle 中,oracle 不支援自增字段,要設定sequence...

hibernate主鍵生成策略

文章摘抄至 1 自動增長identity 適用於mysql db2 ms sql server,採用資料庫生成的主鍵,用於為long short int型別生成唯一標識 使用sql server 和 mysql 的自增欄位,這個方法不能放到 oracle 中,oracle 不支援自增字段,要設定se...