首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >hibernate生成器增量与表自动增量的冲突

hibernate生成器增量与表自动增量的冲突
EN

Stack Overflow用户
提问于 2011-07-21 12:50:14
回答 1查看 4K关注 0票数 1

我将生成器设置为hbm文件中的“增量”,并将auto_increment内容放在数据库表中。这个创意展示的问题..。

这两件事都是矛盾的??

EN

回答 1

Stack Overflow用户

发布于 2011-07-21 13:46:12

是的,它们是相互冲突的,没有道理。

当使用hibernate内置生成器“增量”时,hibernate通过从启动时的最大主键值进行计数来生成标识符,在多个JVM中不安全,并且使用数据库AUTO_INCREMENT --它是为新行生成唯一标识的数据库。

在mySQL DB中,如果使用AUTO_INCREMENT,则应该在映射中使用标识以使数据库安全地生成唯一标识。

从hibernate文档

增量

生成类型为长、短或int的标识符,这些标识符只有在没有其他进程将数据插入到同一表中时才是唯一的。不要在群集中使用。

恒等

支持DB2、MySQL、MySQL、Sybase和HypersonicSQL中的标识列。返回的标识符类型为长、短或int。

更多信息

Hibernate博士5.1.4.1节。生成器

增量文档

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6776308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档