ORA-02289: 序列不存在 在hibernate中正确配置

要将以前做的几个页面和现在的项目整合在一起,但是测试的时候发现突然没法跑了。以前都是可以正常运行的。结果发现是因为原来我在数据库中新建的表因为数据库重新还原而导致丢失。一次我从建了表及其对应的序列、触发器,但是在保存数据的时候报错:ORA-02289:序列不存在

因此将其中orm映射的关系进行了调整,原来的主键生成策略:

<idname="relayStationId"type="long">

<columnname="RELAY_STATION_ID"precision="6"scale="0"/>

<generatorclass="native"></generator>

</id>

修改为如下的主键生成策略:

<idname="relayStationId"type="long">

<columnname="RELAY_STATION_ID"precision="6"scale="0"/>

<generatorclass="sequence">

<paramname="sequence">HSY_SEQ_STATION</param>

</generator>

</id>

如此便能正确运行。

据悉,对于不能确定的主键生成策略,class可以为nativehibernate会自动选择正确的策略。以前运行都是正常的,说明这个说法是正确的。但是这次却不能运行,看来这个东西并不是能很好的自动选择主键生成策略。因此在我们知道如何主键生成的情况下,就直接配置出来,不要用自动选择主键生成策略的native


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值