【发布时间】:2016-01-10 20:06:24
【问题描述】:
目前,我们使用 MySQL 作为数据库,我们使用
@Generated Value(strategy = GenerationType.IDENTITY)
在我们需要将数据库迁移到 Oracle 的某些情况下它运行良好,但此时它无法正常运行。如果有人知道这背后的实际区别是什么以及它是如何工作的?
【问题讨论】:
-
您使用的是什么 ORM 提供程序?
-
如果你使用
GenerationType.AUTO,那么默认情况下hibernate使用hibernate_sequence作为所有表使用的序列,并且一次只能使用一个序列值,这意味着如果使用序列1,那么它不能在其他任何地方使用。但是对于GenerationType.IDENTITY,ID 仅对于该特定列是唯一的。 (测试数据库 - MySQL)
标签: java hibernate spring-mvc jpa