【发布时间】:2012-07-15 01:43:41
【问题描述】:
我正在尝试编写一个 SQL 脚本来将数据从某个旧表迁移到新表。 新表的主键(id)由hibernate管理,旧表的主键也是如此。 我不知道如何使用普通 SQL 为新表分配 id,所以我正在做的是从旧表中获取 id。 迁移脚本按预期工作。
在某些时候,我的应用程序尝试使用 Hibernate 将数据插入到新表中,但我得到了主键约束冲突异常。我怀疑这是因为休眠分配的键与我在迁移旧数据时提供的键发生冲突。 顺便说一句 - hibernate 被配置为为每个表分配唯一的主键。
我做错了什么? 我应该如何解决这个问题?
谢谢
【问题讨论】:
-
您必须从旧表中获取 id 吗?如果您有新的 ID,它会破坏一些东西吗?
-
如果有帮助的话,我不必使用旧 ID。