注册

Mybatis-Plus无法分页/分页错误

那个少年 2024/02/22 1278 7

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:dm8
【操作系统】:win10
【CPU】: x86
【问题描述】*:使用mybatis-plus分页插件,在执行sql时报错了,但是sql复制到数据库中是可以执行的。
mybatis-plus版本3.5.2。
达梦驱动版本8.1.2.192。
mybatis-plus分页插件设置的数据源已选择达梦。

count(*)时是没问题的,执行到分页语句就会报错,但是我将sql复制到数据库中运行,是没问题的,网上搜了很久没有什么答案。

相关截图 红框sql 会报错。
image.png

相关报错:
java.lang.RuntimeException: org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: Error preparing statement. Cause: org.apache.shardingsphere.sql.parser.exception.SQLParsingException: You have an error in your SQL syntax

报错的sql。
SELECT * FROM ( SELECT TMP., ROWNUM ROW_ID FROM ( SELECT i., ie.*, ic.current_value, ic.target_value, ic.tong_ratio, ic.huan_ratio, ic.unit, ic.update_time as valueUpdateTime, ic.change_time as valueChangeTime, ic.display_style as displayStyle, o.name as organization_name, o.type as organization_type, a.api_code FROM cdc_indicator as i LEFT JOIN cdc_indicator_extend ie on i.id = ie.indicator_id LEFT JOIN cdc_organization o on (i.organization_id = o.id and o.status = 1) LEFT JOIN cdc_indicator_current ic on (i.id = ic.indicator_id) LEFT JOIN cdc_api a on (a.id = i.api_id) LEFT JOIN cdc_indicator_cockpit b ON i.id = b.indicator_id WHERE (i.status <> ? AND i.id IN (?,?)) ORDER BY update_time DESC ) TMP WHERE ROWNUM <=?) WHERE ROW_ID > ?

将sql粘贴到数据库中执行确实是没问题的
image.png

实在没有什么头绪,求指点。

回答 0
暂无回答
扫一扫
联系客服