JavaWeb应用在MySQL环境下可以正常运行,数据迁移至Oracle或者人大金仓后应用运行爆出如下错误:

严重: Servlet.service() for servlet [JeeCmsAdmin] in context with path [/dhccms] threw exception [org.hibernate.exception.SQLGrammarException: could not get next sequence value] with root cause
com.kingbase8.util.KSQLException: ERROR: relation "HIBERNATE_SEQUENCE" does not exist

经查证,Hibernate中的实体类使用native方式生成主键,native是由Hibernate根据使用的数据库自行判断采用identity、hilo、sequence其中一种作为主键生成方式。

MySQL采用自增作为主键,而Oracle数据库没有类似的自增类型,因此需要一个名称为hibernate_sequence的序列做支持。

hibernate_sequence序列语句:

create sequence HIBERNATE_SEQUENCE
minvalue 100000
maxvalue 999999999999999999999999
start with 100060
increment by 1
cache 20;

在目标数据库中建立对应的序列后程序可正常运行。

"HIBERNATE_SEQUENCE" does not exist问题处理的更多相关文章

  1. com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'portal.hibernate_sequence' doesn't exist, 谈谈主键自增的方式

    最近几天几天做项目用到了Spring Data JPA,确实是个好东西,省了很多力气.但是由于刚开始用,也遇到不少头疼的问题,如下,调用JpaRepository接口的save方法保存一个对象到数据库 ...

  2. SpringBoot报错:Table 'database_name.hibernate_sequence' doesn't exist

    引起条件: SpringBoot+JPA插入包含自增字段的对象 @Id @GeneratedValue private Integer id; 解决方法: 给注解添加属性 @Id @Generated ...

  3. 报错:Table 'sell.hibernate_sequence' doesn't exist

    错误信息:Table 'sell.hibernate_sequence' doesn't exist 错误原因:实体主键没有配置主键自增长 完整配置如下 /**主键id*/ @Id @Generate ...

  4. Table 'xxx.hibernate_sequence' doesn't exist

    Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'xxx.hibernate_sequence' ...

  5. Table 'jiang.hibernate_sequence' doesn't exist

    spring+struts2+hibernate 运行报错 Table 'jiang.hibernate_sequence' doesn't exist 解决方法 一. 在hibernate.cfg. ...

  6. [spring boot] Table 'yhm.hibernate_sequence' doesn't exist

    在使用该注解时:@GeneratedValue要注意的几点: @GeneratedValue注解的strategy属性提供四种值: -AUTO主键由程序控制, 是默认选项 ,不设置就是这个 -IDEN ...

  7. jpa报错:Table 'dev-test.hibernate_sequence' doesn't exist

    Hibernate 能够出色地自动生成主键.Hibernate/EBJ 3 注释也可以为主键的自动生成提供丰富的支持,允许实现各种策略.其生成规则由@GeneratedValue设定的.这里的@id和 ...

  8. SpringBoot2 【关于:Table 'XXX.hibernate_sequence' doesn't exist】

    将ID生成略组改成@GeneratedValue(strategy = GenerationType.IDENTITY).

  9. SpringBoot+Jpa测试自增时报错Springboot-jpa Table 'sell.hibernate_sequence' doesn't exist

    解决办法: @GeneratedValue(strategy = GenerationType.IDENTITY) 如图所示:

随机推荐

  1. Capture and report JavaScript errors with window.onerror

    原文:https://blog.sentry.io/2016/01/04/client-javascript-reporting-window-onerror.html onerror is a sp ...

  2. 如何在 Linux 环境下配置 Nagios Remote Plugin Executor (NRPE)

    为 NRPE 配置自定义命令 远程服务器上安装 下面列出了一些可以用于 NRPE 的自定义命令.这些命令在远程服务器的 /etc/nagios/nrpe.cfg 文件中定义. ## 当 1.5.15 ...

  3. Android NFC近场通信02----读写卡的准备工作

                        Android NFC近场通信02----读写卡的准备工作      因为公司接了一个听上去感觉比較NB的项目.给某油田做派工系统 .并由小女子负责Androi ...

  4. JS 省市区三级联动

    JS 省市区三级联动: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:/ ...

  5. 【转】LoadRunner监控 -- Linux的17个指标

    这17个指标根据需要设置,指标设置的越多,对服务器真实值影响越大,所以要秉承按需而设的原则.   1.Average load:Average number of processes simultan ...

  6. 打造极致性能数据库中间件丨LVS+Keepalive+华为云DDM之理论篇

    背景说明 华为云分布式数据库中间件(Distributed Database Middleware,简称DDM),专注于解决数据库分布式扩展问题,突破了传统数据库的容量和性能瓶颈,实现海量数据高并发访 ...

  7. Linux学习笔记:系统启动引导过程

    Linux系统启动引导过程 近期发现自己在仅仅是掌握上有几个比較硬的伤: 一.知识体系碎片,比方Linux,这学点那学点,结果没有成体系,串不起来: 二.记忆时间短暂,非常多的内容学了就忘,最后的结果 ...

  8. Hibernate中二级缓存指的是什么?

    一.一级缓存.二级缓存的概念解释 (1)一级缓存就是Session级别的缓存,一个Session做了一个查询操作,它会把这个操作的结果放在一级缓存中,如果短时间内这个 session(一定要同一个se ...

  9. Android Studio配置完毕Genymotion 看不到Genymotion图标

    没有打开toolBar想要看到genymotion插件图标,AndroidStudio单击视图(view)>工具栏显示工具栏(toolbar)

  10. git 如何让单个文件回退到指定的版本【转】

    本文转载自:http://blog.csdn.net/ikscher/article/details/43851643 1.进入到文件所在文件目录,或者能找到文件的路径查看文件的修改记录 1 $ gi ...