首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >merge sql error, dbType dm, sql

merge sql error, dbType dm, sql

作者头像
taixingyiji
发布于 2022-07-25 08:48:14
发布于 2022-07-25 08:48:14
1.8K00
代码可运行
举报
运行总次数:0
代码可运行

# merge sql error, dbType dm, sql

达梦数据库配合Druid报错及解决方案

# 一. 问题描述

编写代码进行测试的时候,控制台报出如下错误

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
2021-02-26 16:34:49.637 ERROR 21256 --- [nio-8080-exec-1] c.alibaba.druid.filter.stat.StatFilter   : merge sql error, dbType dm, sql : SELECT ... ASC LIMIT ? 
com.alibaba.druid.sql.parser.ParserException: syntax error, error in :' ASC LIMIT ? ',expect IDENTIFIER, actual IDENTIFIER LIMIT
	at com.alibaba.druid.sql.parser.SQLParser.printError(SQLParser.java:280) ~[druid-1.1.0.jar:1.1.0]
	at com.alibaba.druid.sql.parser.SQLStatementParser.parseStatementList(SQLStatementParser.java:375) ~[druid-1.1.0.jar:1.1.0]
	at com.alibaba.druid.sql.parser.SQLStatementParser.parseStatementList(SQLStatementParser.java:76) ~[druid-1.1.0.jar:1.1.0]
	at com.alibaba.druid.sql.visitor.ParameterizedOutputVisitorUtils.parameterize(ParameterizedOutputVisitorUtils.java:43) ~[druid-1.1.0.jar:1.1.0]
	at com.alibaba.druid.filter.stat.StatFilter.mergeSql(StatFilter.java:146) [druid-1.1.0.jar:1.1.0]
	at com.alibaba.druid.filter.stat.StatFilter.createSqlStat(StatFilter.java:634) [druid-1.1.0.jar:1.1.0]
	at com.alibaba.druid.filter.stat.StatFilter.statementPrepareAfter(StatFilter.java:310) [druid-1.1.0.jar:1.1.0]

原因是因为 druidmerge功能不支持达梦的 asc LIMIT ? 分页排序写法

# 二. 问题解决

# 1. 关闭mergeSQL功能

properties

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#springboot
spring.datasource.druid.filter.stat.merge-sql=false

yml

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#springboot
spring:
  datasource:
	druid: 
	  filter:
		stat:
		  merge-sql:false

# 2. 忽略该error虽然报error.但是语句是可以执行成功的,请自行校验

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-02-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
数据库连接池为什么首选Druid
Druid是阿里巴巴的一个开源项目,号称为监控而生的数据库连接池,在功能、性能、扩展性方面都超过其他,例如 DBCP、C3P0、BoneCP、Proxool、JBoss、DataSource 等连接池,而且Druid已经在阿里巴巴部署了超过600个应用,通过了极为严格的考验,这才收获了大家的青睐!
微观技术
2021/03/11
1K0
数据库连接池为什么首选Druid
YashanDB知识库|集成 Druid 连接池时日志报 “token IDENTIFIER start”?问题虽小但有来头!
【关键词】YashanDB JDBC、Druid连接池、mergeSql、ParameterizedOutputVisitorUtils、token IDENTIFIER start
数据库砖家
2025/04/22
980
【YashanDB知识库】yasdb jdbc驱动集成druid连接池,业务(java)日志中有token IDENTIFIER start异常
对正常的业务流程无影响,但是影响druid的merge sql功能(此功能会将sql语句中的字面量替换为绑定变量,然后将替换以后的sql视为同一个,然后用做执行性能统计)
用户10349277
2025/02/20
1040
Spring Boot 2.x 自定义数据源 DruidDataSource(操作 mysql 数据库)「建议收藏」
1、Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP、PROXOOL 等 DB 池的优点,同时加入了日志监控
全栈程序员站长
2022/06/28
1.3K0
Spring Boot 2.x 自定义数据源 DruidDataSource(操作 mysql 数据库)「建议收藏」
快速学习-Mycat日志分析
mycat 的日志文件配置为 MYCAT_HOME/conf/log4j.xml,结构为:
cwl_java
2021/08/30
6080
PageHelper不安全的分页问题,导致ParserException: syntax error, error in :'it 1 LIMIT ? ', expect LIMIT, actual
项目中使用PageHlper插件进行分页,今日发现有多处SQL查询语句都出现了如下的报错。
翎野君
2023/05/12
4290
Spring Boot 集成 Druid 监控数据源
Druid 是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池、插件框架和 SQL 解析器组成,该项目主要是为了扩展 JDBC 的一些限制,可以让程序员实现一些特殊的需求,比如向密钥服务请求凭证、统计 SQL 信息、SQL 性能收集、SQL 注入检查、SQL 翻译等,程序员可以通过定制来实现自己需要的功能。通常叫"德鲁伊的"
田维常
2020/08/26
1.3K0
Spring Boot 集成 Druid 监控数据源
SpringBoot整合jsp,Druid数据监控,与Shiro,快速为实体类添加相应方法
一.在SpringBoot项目中, 如何能够使用并运行Jsp页面? 1.添加相应jar包坐标 <dependency> <groupId>javax.servletgroupId> <
时间静止不是简史
2021/03/04
7930
SpringBoot整合jsp,Druid数据监控,与Shiro,快速为实体类添加相应方法
SpringBoot 监控 SQL 运行情况?
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/05/12
1.2K0
SpringBoot 监控 SQL 运行情况?
搭建单体SpringBoot项目 集成Druid数据库连接池和监控
Druid Spring Boot Starter 用于帮助你在Spring Boot项目中轻松集成Druid数据库连接池和监控。
郭顺发
2023/07/07
6330
springboot之druid数据库密码加密实战
最近接了一个外包单(基于springboot2,连接池为druid),客户经费有限,基本上要啥,啥没有,项目基本上是托管在私人的某gay,某云等,本着让客户放心的原则,就在安全方面多考虑了一点,首先比如数据库密码加密之类的,虽然要是有心要破解也是容易,但至少加密给自己心里一点暗示。。。废话有点多,进入正题,本文主要分为3个部分,第一部分是单个数据源密码加密,第二部分是多个数据源密码加密,第三部分是简要的解密源码分析。
lyb-geek
2022/03/10
1.9K0
springboot之druid数据库密码加密实战
SpringBoot重点详解–使用Druid+Jpa
Druid有以下优点: 1) 可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。 2) 替换DBCP和C3P0,Druid提供了一个高效、功能强大、可扩展性好的数据库连接池。 3) 数据库密码加密。直接把数据库密码写在配置文件中,这是不好的行为,容易导致安全问题。DruidDriver和DruidDataSource都支持PasswordCallback。 4) SQL执行日志,Druid提供了不同的LogFilter,能够支持Common-Logging、Log4j和JdkLog,你可以按需要选择相应的LogFilter,监控你应用的数据库访问情况。 5) 扩展JDBC,如果你要对JDBC层有编程的需求,可以通过Druid提供的Filter-Chain机制,很方便编写JDBC层的扩展插件。
全栈程序员站长
2022/09/15
1K0
Druid 异常分析 java.sql.SQLException: interrupt Druid
今天看线上一直报 java.sql.SQLException: interrupt 因为第一次遇到也在网上找了一些资料,其中网上的大部分内容如下:
双鬼带单
2021/05/13
9.6K1
SpringBoot2集成Druid配置
Druid首先是Java语言中最好的数据库连接池,也是阿里巴巴的开源项目。Druid是阿里巴巴开发的号称为监控而生的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource等等等,秒杀一切。而且Druid已经在阿里巴巴部署了超过600个应用,经过好几年年生产环境大规模部署的严苛考验!
全栈程序员站长
2022/09/15
1.7K0
Spring Boot 整合Druid
等待maven自动导入后,我们在External Libraries这里能看到这个Druid的全部源码
LCyee
2020/08/05
1.7K0
Spring Boot 整合Druid
SpringBoot 监控 SQL 运行情况?
虽然 HikariCP 的速度稍快,但是,Druid能够提供强大的监控和扩展功能,也是阿里巴巴的开源项目。 Druid是阿里巴巴开发的号称为监控而生的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource等等等,秒杀一切。 Druid 可以很好的监控 DB 池连接和 SQL 的执行情况,天生就是针对监控而生的 DB 连接池。 Spring Boot 默认数据源 HikariDataSource 与 JdbcTem
IT大咖说
2022/05/12
8920
SpringBoot 监控 SQL 运行情况?
使用Druid监控SQL执行状态
本文使用Druid的连接池替换掉原来的C3P0连接池,然后配置Druid的相关属性,完成对Spring Web工程的JDBC监控。
孟君
2019/10/22
6.6K0
使用Druid监控SQL执行状态
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(七):集成 Druid 数据源
数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。通过数据库连接池能明显提高对数据库操作的性能。在Java应用程序开发中,常用的连接池有DBCP、C3P0、Proxool等。
朝雨忆轻尘
2019/06/18
1.1K0
巧用Druid数据源实现数据库连接密码的加密解密
一个系统的数据库的连接密码作为一个非常重要的安全数据,其安全非常重要。而在代码的配置文件中直接存放明文密码提交到代码仓库后显然有泄露的风险。
用户3587585
2022/04/14
5.7K0
巧用Druid数据源实现数据库连接密码的加密解密
十.SpringBoot配置Druid连接池
     连接池的作用是为了提高性能,将已经创建好的连接保存在池中,当有请求来时,直接使用已经创建好的连接对Server端进行访问。这样省略(复用)了创建连接和销毁连接的过程(TCP连接建立时的三次握手和销毁时的四次握手),从而在性能上得到了提高。Druid是一个JDBC组件,它包括三部分:DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系、DruidDataSource 高效可管理的数据库连接池、SQLParser。可以监控数据库访问性能,Druid内置提供了一个功能强大的StatFilter插件,能够详细统计SQL的执行性能,这对于线上分析数据库访问性能有帮助。
十分钟空间
2022/08/17
5.3K0
十.SpringBoot配置Druid连接池
推荐阅读
相关推荐
数据库连接池为什么首选Druid
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验