Hibernate/Oracle seqhilo生成器
我正在尝试为Oracle上的Hibernate应用程序配置seqhilo生成器Hibernate/Oracle seqhilo生成器,oracle,hibernate,oracle10g,sequence,ora-00001,Oracle,Hibernate,Oracle10g,Sequence,Ora 00001,我正在尝试为Oracle上的Hibernate应用程序配置seqhilo生成器 <id name="idTest" type="int"> <column name="ID_TEST" precision="6" scale="0" /> <generator class="seqhilo"> <param name="sequence">S_TEST</param> <
<id name="idTest" type="int">
<column name="ID_TEST" precision="6" scale="0" />
<generator class="seqhilo">
<param name="sequence">S_TEST</param>
<param name="max_lo">1000</param>
</generator>
</id>
必须生成的字段(id_Test)始终等于零,即使我将生成器更改为sequence或native,结果仍然相同声明看起来正确,或者至少非常接近文档中的示例:
hilo和seqhilo生成器
提供两种替代实现
对hi/lo算法的改进。第一
实施需要“特殊的”
数据库表以容纳下一个
可用的“hi”值。如果得到支持,
第二种使用Oracle样式
顺序
<id name="id" type="long" column="cat_id">
<generator class="seqhilo">
<param name="sequence">hi_value</param>
<param name="max_lo">100</param>
</generator>
</id>
高值
100
但是为了调试这个问题,我会尝试
- 激活以查看到底发生了什么(并发布结果)
- 坚持以上示例,即在
元素中定义列,并使用id
long
- 如果可行,请开始修改配置
从dual
选择S_TEST.nextval返回什么吗?是的,我运行此查询,结果在每次调用时递增
<id name="id" type="long" column="cat_id">
<generator class="seqhilo">
<param name="sequence">hi_value</param>
<param name="max_lo">100</param>
</generator>
</id>