首页 > 数据库技术 > 详细

关于 SpringBoot JPA + Oracle 同义词 自己作的bug

时间:2019-12-23 15:32:34      阅读:160      评论:0      收藏:0      [点我收藏+]

今天使用IDEA生成JPA实体类,继承JpaRepository 调用其默认的查询方法时,报错了,错误信息如下:

192.168.3.8 2019-12-23 14:10:14 WARN  [org.springframework.kafka.KafkaListenerEndpointContainer#0-0-C-1] org.hibernate.engine.jdbc.spi.SqlExceptionHelper SQL Error: 904, SQLState: 42000
192.168.3.8 2019-12-23 14:10:14 ERROR [org.springframework.kafka.KafkaListenerEndpointContainer#0-0-C-1] org.hibernate.engine.jdbc.spi.SqlExceptionHelper ORA-00904: "PRPCMAINEX0_"."YYCDFLAG": 标识符无效

org.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet

标识符无效?

  1.   难道字段的大小写有问题和数据库的不一致?经排查,字段一致,运行还是一样的错。
  2.  难道就这个字段有问题? 加@Transient注解,忽略这个字段,运行还是一样的错,不过字段换了个新的。
  3.  e....注释掉所有的字段,只留下主键,运行还是一样的错,不过字段换了主键
  4.  lou 出sql 执行,可以正常执行。<font color=red>(此处有坑)</font>

思考 1,2,3 ........

问题原因:同义词的表创建出错了,

  1. 涉及的表的同义词创建较早,只记得同义词 创建了。
  2. lou 出的Sql 执行时用的原库,所以可以正常执行。
-- 子表和母表 如果子表要同义母表,本来是A对应A B对应B,但是同义时,把B表同义成A表了,而后续的逻辑是按照A表的逻辑写的,所以会出现以上错误

同义词参考连接

编辑器不好用,我用typora 编辑完复制过来的,格式如果有问题还请各位见谅

关于 SpringBoot JPA + Oracle 同义词 自己作的bug

原文:https://www.cnblogs.com/loveran/p/12083853.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!