首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JPA/Hibernate对Oracle序列的增量太多

JPA/Hibernate对Oracle序列的增量太多
EN

Stack Overflow用户
提问于 2012-02-01 22:47:13
回答 2查看 8.1K关注 0票数 3

我在Java项目中使用Hibernate,我有Oracle DB。在ID列中,我标识了一个增量为1的序列,但这就是JPA/Hibernate如何从该序列中获取nextVal:

代码语言:javascript
复制
1   1451
2   1450
3   1402
4   1401
5   1400
6   1352
7   1351
8   1350
9    426

您可以看到,nextVal有时会得到1,但大多数情况下是50或更多。即使我把起始值设置为1,我还是看到了序列200的开始,为什么会发生这种情况?这是正常的吗?

我能以某种方式减少这个"50“增量吗?

编辑:复制hibernate oracle sequence produces large gap

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-13 17:23:55

我找到了这个解决方案;

我将序列缓存设置为“no-

  • 我将"allocationSize=1“放在@Id属性的注释@SequenceGenerator中,如下所示:

问题已解决

票数 8
EN

Stack Overflow用户

发布于 2012-02-01 22:57:25

如果您的序列的缓存大小为50,那么在您从序列获取数据的间隙关闭数据库时,您可能会看到这个问题。当数据库关闭时,剩余的缓存值将永远不会被使用。

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

https://stackoverflow.com/questions/9097825

复制
相关文章

相似问题

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