最近在做压力测试,需要将生产上的两个数据库数据导到测试环境上来,因为涉及到数据库的操作都是交给DBA来做的,所以就没有管,然后当DBA跟我说一切OK之后,为了保险起见我还是决定在本地试一下,项目是正常起来了,当我打一个get请求之后。。。,出现了尴尬的一幕,报错啦:relation "xxx" does not exist

说我的表不存在,纳尼?数据库连接、entity一切都没有变的呀,联想起以前也出现过类似的情况,是数据库的search_path没有修改,于是向亲爱的DBA同事反映了,效率很快的改好了,再试了下,发现这个数据库确实是好了,再试试另一个数据库,发现又报错了,但是这次的和之前的报错不一样了,上次是表找不到,这次是列找不到,报错信息如下:

exception occurs: org.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet;

Caused by: org.hibernate.exception.SQLGrammarException: could not extract ResultSet

Caused by: org.postgresql.util.PSQLException: ERROR: column shiplocati0_.latitude does not exist

虽然很尴尬,但是不能慌,网上看看可有兄弟跟我遇到一样的问题,看了一圈,发现大家出现这样的问题大致是两种原因:

1.表与字段没有对应起来

2.数据库连接池配置方言与数据库不匹配

但是仔细检查了一遍,我的字段没有动,表数据也是DBA直接copy过来的,第一种情况应该不会发生,方言我也没有动,检查了下也是没问题的,这让我很难受。

思来想去没道理啊,难道是因为DBA只改了第一个库的search_path?但是,这么明明就找到了表的呀,只是字段没有,强迫自己静下来,倒杯水戴上耳机听听歌。。。继续去网上看看,看到一个哥们是这样解决的:

原文:https://stackoverflow.com/questions/58477715/org-postgresql-util-psqlexception-error-column-systementi0-id-does-not-exist

虽然我感觉不是schema的问题,因为我觉得我们的DBA肯定两个表的search_path都改了。但是我已经走投无路了,死马当活马医吧,在@Table注解上加上 schema 属性 ,

@Table(name = "table_name", schema = "schema_name")

试了下,发现居然解决问题了,我???

唉,人与人之间的信任呢?但是我在想,既然schema不对,它是怎么找到表的呢?

因为我们用的schema都是自定义的schema,而不是默认的public,所以我们正在使用的数据库都是修改了search_path为自定义的schema的,但是,后面这个库没有改search_path,它会使用默认的public的schema,它怎么会找得到表呢?于是去数据库看了一下,发现默认的public schema里面居然真的有这张表,但是比现在的表要少几个字段。。。应该是以前项目早期建的表,问了下老同事,发现确实是这样,太坑了啊。。。被自己蠢哭了,应该早早问问DBA有没有改第二个库的search_path的。。。

既然问题找到了,让DBA改下search_path就OK啦。所以说,我的问题其实还是上面说的第一种情况,但是不是那么的明显就能看出来的。

Caused by: org.postgresql.util.PSQLException: ERROR: column xxx.xxx does not exist相关推荐

  1. 脱坑:Kettle+postgres:Caused by: org.postgresql.util.PSQLException: ERROR: column “xxx“ does not exist

    用kettle往postgres数据库中传数据时,发现了这样的问题: 可是实际上是有这个字段的,数据库中字段为大写的"SUPPLIER_CODE". 第一次操作pg数据库,没有经验 ...

  2. Cause: org.postgresql.util.PSQLException: ERROR: column province_id does not exist

    数据库中的表bs_province如图所示: SQL语句: select PROVINCE_ID, PROVINCE_CODE, PROVINCE_NAME, SHORT_NAME, LNG, LAT ...

  3. 迁移pg之后org.postgresql.util.PSQLException: ERROR: could not find left sibling of block 4594 in index..

    org.postgresql.util.PSQLException: ERROR: could not find left sibling of block 4594 in index "s ...

  4. Org.postgresql.util.PSQLException: ERROR : duplicate key value violates unique constraint XXXX

    Org.postgresql.util.PSQLException: ERROR : duplicate key value violates unique constraint device_id_ ...

  5. Postgres -- 报错: org.postgresql.util.PSQLException: 语法错误 在 “user“ 或附近

    错误提示: Caused by: org.postgresql.util.PSQLException: 错误: 语法错误 在 "user" 或附近的 这是因为 user 在 pos ...

  6. org.postgresql.util.PSQLException: 不良的类型值 long : \x

    问题现象: 使用xxl-job-admin适配pg数据库的时候,点击启动任务,虽然提示启动成功,但是状态不正常,查看后台,果然报错: Caused by: org.postgresql.util.PS ...

  7. org.postgresql.util.PSQLException: 栏位索引超过许可范围:1,栏位数:0

    使用 public interface SysCodeDao {String getCodeByName(@Param("area") String area);} xml配置 & ...

  8. org.postgresql.util.psqlexception总结

    异常一:连接数据库报乱码异常 原因:连自己本地数据库最好不用自己IP,而是用localhost或者127.0.0.1 错误配置文件如下: 异常二:org.postgresql.util.PSQLExc ...

  9. 拉起Docker容器初始化数据源时,报:org.postgresql.util.PSQLException: The connection attempt failed. 的解决办法

    问题概述 关于这个问题,博主是在进行容器化部署的时候遇到的, 这个问题,说是问题又不是问题,为了紧贴单位的发展战略及发展文化方针,给单位培养人才,先大胆的让同事先尝试着操作,最后出现问题了,博主就出场 ...

最新文章

  1. 推荐8个实用的办公工具,让你体验起飞的感觉
  2. CSDN博客如何转载(技术贴)
  3. Oracle错误集!
  4. 一个简单图书管理系统TSGL的应用数据库
  5. asp.net checkboxlist绑定数据读取出来
  6. c语言输入相应的成绩评定信息,C语言机练习题记答案.doc
  7. JdbcTemplate 排序查询结果不一致问题
  8. 如何更方便地调试javascript代码
  9. 拓端tecdat|R语言使用倾向评分提高RCT(随机对照试验)的效率
  10. 安装VMware15.5+安装win10虚拟机操作系统
  11. xyz文件怎么生成三维模型_根据三维空间坐标点如何构建三维模型
  12. 如何配置服务器的安全?
  13. 如何批量调整图片大小?
  14. CSS线性渐变网站记录
  15. 计算机管理中优盘显示无媒体,无法识别、无媒体、无容量等的U盘,是怎么造成的?(故障篇)...
  16. 开源无国界!CSDN 董事长蒋涛、GitHub 副总裁 Thomas Dohmke 对话实录
  17. C语言——伸缩型数组成员
  18. DIY服务器raid硬盘检测,DIY存储服务器技术篇——硬盘RAID选用(3)
  19. 网页版Photoshop,
  20. 双臂电桥测低电阻大物实验数据处理(C++实现)

热门文章

  1. centos yum配置文件 .repo文件解释
  2. 华为折叠:光而不耀 静水潜流
  3. ubuntu控制台访问u盘_ubuntu中使用终端查看U盘里的内容
  4. SpringBoot动态配置开启关闭定时任务
  5. 《工程伦理与学术道德》之《工程活动中的环境伦理》
  6. 从零开始搭建Linux共享服务器(云享系统)
  7. 电池_电池容量的测试——手机、电池、充电器三件套之电池篇3
  8. 使用memc-nginx和srcache-nginx模块构建高效透明的缓存机制
  9. 社团在学生清华借教室流程
  10. MySQL----mysql_secure_installation 安全配置向导