doubaoxue5788 2016-06-02 13:57
浏览 1035

为什么oracle序列在设置为1时增加2?

so this is perplexing me.. so I got this syntax in my JPA code: (which I follow instructions and the syntax is correct)

 @SequenceGenerator(name="oracle_gen", sequenceName="TEST_SEQ", allocationSize=1)
 @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="oracle_gen")

where I got a sequence in my Oracle 10 named "TEST_SEQ" which is set to increment by 1

It works now.. but when it inserts my row, the ID column (where the sequence is set to) increase by 2.. like 17, 19, 21, etc..

When I did select test_seq.nextval from dual from oracle, it currently say 22 but I know if I add another row from my java application, it'll be 23.. I can't figure out why and where it is adding another 1. The sequence is already set to NOCACHE (in Oracle).. what am I doing wrong? Help! :(

Ok.. this is so odd.. I just realized whenever I do a select test_seq.nextval, it keep increasing my value?! I do have a trigger on the database. Is that what's causing it? sorry, I'm new to Oracle/pl/sql.

thanks for any help.

  • 写回答

2条回答 默认 最新

  • dongmao9217 2016-06-02 14:03
    关注

    You're possibly misusing NEXTVAL. From Using Sequences (emphasis mine):

    A sequence is referenced in SQL statements with the NEXTVAL and CURRVAL pseudocolumns; each new sequence number is generated by a reference to the sequence pseudocolumn NEXTVAL, while the current sequence number can be repeatedly referenced using the pseudo-column CURRVAL.

    评论

报告相同问题?

悬赏问题

  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?
  • ¥15 ubuntu系统下挂载磁盘上执行./提示权限不够
  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 关于#r语言#的问题:差异分析前数据准备,报错Error in data[, sampleName1] : subscript out of bounds请问怎么解决呀以下是全部代码:
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型