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...