如图,mybatis连接sqlite查询时报错,没有出来查询结果,这是怎么一回事啊?
1条回答 默认 最新
关注
引自免费微信小程序:皆我百晓生
看起来你正在使用MyBatis与SQLite数据库进行交互,并且在执行一个包含CONCAT函数的查询时遇到了错误。SQLite默认不支持CONCAT函数,你需要使用||操作符来替代它。
以下是修改后的SQL查询语句:
SELECT t.id, t.job_group, t.job_desc, t.add_time, t.update_time, t.author, t.alarm_email, t.schedule_type, t.schedule_conf, t.misfire_strategy, t.executor_route_strategy, t.executor_handler, t.executor_param, t.executor_block_strategy, t.executor_timeout, t.executor_fail_retry_count, t.glue_type, t.glue_source, t.glue_remark, t.glue_updatetime, t.child_jobid, t.trigger_status, t.trigger_last_time, t.trigger_next_time FROM xxl_job_info AS t WHERE t.job_group = ? AND t.job_desc LIKE '%' || ? || '%' AND t.executor_handler LIKE '%' || ? || '%' AND t.author LIKE '%' || ? || '%' ORDER BY id DESC LIMIT ?, ?
将你的
XxlJobInfoMapper.xml
文件中的相关查询语句替换成上述代码。确保你在mapper接口的方法中传递了正确的参数数量。如果你的代码中是这样调用的:List<XxlJobInfo> pageList(@Param("jobGroup") String jobGroup, @Param("jobDesc") String jobDesc, @Param("executorHandler") String executorHandler, @Param("author") String author, @Param("offset") int offset, @Param("limit") int limit);
那么在实际调用这个方法时,确保传入了对应的参数值,例如:
Map<String, Object> params = new HashMap<>(); params.put("jobGroup", "your_job_group"); params.put("jobDesc", "your_search_string_for_jobDesc"); params.put("executorHandler", "your_search_string_for_executorHandler"); params.put("author", "your_search_string_for_author"); params.put("offset", 0); // 可能的分页偏移量 params.put("limit", 10); // 每次查询的数量 int total = xxlJobInfoMapper.pageList(params).size(); List<XxlJobInfo> jobInfos = xxlJobInfoMapper.pageList(params);
如果这还不奏效,检查一下其他可能的问题,比如数据源配置是否正确,数据库连接是否正常等。如果还有问题,提供更多的上下文信息,我会进一步帮助你解决。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥20 WPF MVVM模式 handycontrol 框架, hc:SearchBar 控件 Text="{Binding NavMenusKeyWords}" 绑定取不到值
- ¥15 需要手写数字信号处理Dsp三个简单题 不用太复杂
- ¥15 数字信号处理考试111
- ¥100 关于#audobe audition#的问题,如何解决?
- ¥15 allegro17.2生成bom表是空白的
- ¥15 请问一下怎么打通CAN通讯
- ¥20 如何在 rocky9.4 部署 CDH6.3.2?
- ¥35 navicat将excel中的数据导入mysql出错
- ¥15 rt-thread线程切换的问题
- ¥15 高通uboot 打印ubi init err 22