PG报错PSQLException: 错误: 语法错误 在 “{“ 或附近的 位置

出现以下报错信息

运行时异常: ### Error querying database. Cause: org.postgresql.util.PSQLException: 错误: 语法错误 在 "{" 或附近的 位置:237 ### The error may exist in file [D:\SVNCode\SCDZ\trunk\SCDCMIS\target\classes\mybatis\DataManage\VJcba10aMapper.xml] ### The error may involve com.jeethink.project.DataManage.jcba10a.mapper.VJcba10aMapper.selectVJcba10aList-Inline ### The error occurred while setting parameters ### SQL: select count(0) from (SELECT zhaa01a090, zhaa01a110, zhaa01a010, zhaa01a020, Count(zhaa01a010) as bangfunum, jcba09a050 FROM v_jcba10a WHERE ZHAA01A875 like '%'||{zhaa01a875}||'%' GROUP BY zhaa01a090, zhaa01a110, zhaa01a010, zhaa01a020,jcba09a050 ORDER BY zhaa01a010 asc) tmp_count ### Cause: org.postgresql.util.PSQLException: 错误: 语法错误 在 "{" 或附近的 位置:237 ; bad SQL grammar []; nested exception is org.postgresql.util.PSQLException: 错误: 语法错误 在 "{" 或附近的 位置:237

可能是因为在不能进行模糊查询的字段上进行了模糊查询,比如Date是不可以进行模糊查询的,需要转成字符串的时间来进行模糊查询。
日期类型的模糊查询是不能直接进行的,要先转换成字符串然后再查询
例子如下:
select * from table where to_char(yyyy-mm-dd hh24:mi:ss) like ‘%08:30:00%’
这里要注意的是postgre的时间处理上,不分大小写,时分秒格式:hh24:mi:ss,这样才能正常的显示
这样查出的就是所有的时间为8点的数据


	SELECT
		zhaa01a090,
		zhaa01a110,
		zhaa01a010,
		zhaa01a020,
		COUNT ( zhaa01a010 ) AS bangfunum,
		jcba09a050 
	FROM
		v_jcba10a 
	WHERE
		 to_char(jcba10a080, 'yyyy-mm-dd hh24:mi:ss') LIKE'%1956-01%' 
	GROUP BY
		zhaa01a090,
		zhaa01a110,
		zhaa01a010,
		zhaa01a020,
		jcba09a050 
	ORDER BY
	zhaa01a010 ASC 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
当 Java 程序出现 "An I/O error occurred while sending to the backend" 异常时,这通常意味着客户端与 PostgreSQL 服务器之间的连接已经断开或无法建立,或者在通信过程中出现了网络故障。解决此异常的方法如下: 1. 检查网络连接:首先需要确认网络连接是否正常。可以尝试 ping PostgreSQL 服务器,看看是否能够正常连接。如果网络连接出现问题,需要解决网络问题。 2. 检查 PostgreSQL 服务器状态:检查 PostgreSQL 服务器是否正常运行,并且能够接受新的连接请求。可以尝试使用 psql 工具或其他客户端工具连接 PostgreSQL 服务器,看看是否能够成功连接。 3. 检查 PostgreSQL 服务器日志:如果 PostgreSQL 服务器无法处理客户端请求,可能会在日志中记录错误信息。可以检查 PostgreSQL 服务器的日志文件,找到相关的错误信息,从而确定出错的原因。 4. 调整客户端连接参数:如果客户端连接参数设置不当,可能会导致连接断开。可以尝试调整客户端连接参数,比如增加连接超时时间、调整缓冲区大小等。 5. 升级 PostgreSQL 版本:如果出现此异常的原因是 PostgreSQL 的 bug,可以尝试升级到最新版本,以获得更好的稳定性和更好的性能。 总之,解决 "An I/O error occurred while sending to the backend" 的异常需要结合具体情况进行分析和解决,可以根据异常信息以及上述方法进行排查。同时,建议在 Java 程序中加入异常处理机制,以便及时捕获并处理异常,提高程序的稳定性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haokan_Jia

你的鼓励就是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值