痞子374 2024-06-05 16:36 采纳率: 94.6%
浏览 6
已结题

Mybatis连接sqlite数据库查询时报错

img


如图,在使用mybatis连接sqlite数据库进行查询操作时发生了报错,没有相关查询结果出现,经过排查发现跟CONCAT函数有关,应该如何修改啊

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-06-05 16:36
    关注

    引自免费微信小程序:皆我百晓生

    在SQLite中,CONCAT 函数的语法与MySQL等其他一些数据库系统有所不同。SQLite 使用 || 运算符来进行字符串拼接,而不是 CONCAT 函数。因此,你需要将查询中的 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_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 ?, ?
    

    现在,你需要更新你的 MyBatis XML 映射文件(例如:XxlJobInfoMapper.xml)中的查询部分,将原有的 CONCAT 替换成上述的 || 连接符。确保你在XML标签的正确位置进行了替换,如下所示:

    <select id="pageList" parameterType="map" resultType="com.xxl.job.admin.entity.XxlJobInfo">
        SELECT
            ...
        FROM xxl_job_info AS t 
        WHERE t.job_group = #{jobGroup}
        AND t.job_desc LIKE '%' || #{jobDesc} || '%'
        AND t.executor_handler LIKE '%' || #{executorHandler} || '%'
        AND t.author LIKE '%' || #{author} || '%'
        ORDER BY id DESC
        LIMIT #{offset}, #{limit}
    </select>
    

    请确保在你的 Java 代码中传递正确的参数到这个方法,并且这些参数对应于你在映射文件中使用的占位符(如:#{jobGroup}#{jobDesc} 等)。这样应该可以解决因 CONCAT 函数不支持而引发的问题。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 6月13日
  • 已采纳回答 6月5日
  • 创建了问题 6月5日

悬赏问题

  • ¥15 lvgl v8.2定时器提前到来
  • ¥15 qtcp 发送数据时偶尔会遇到发送数据失败?用的MSVC编译器(标签-qt|关键词-tcp)
  • ¥15 cam_lidar_calibration报错
  • ¥15 拓扑学,凸集,紧集。。
  • ¥15 如何扩大AIS数据容量
  • ¥15 单纯型python实现编译报错
  • ¥15 c++2013读写oracle
  • ¥15 c++ gmssl sm2验签demo
  • ¥15 关于模的完全剩余系(关键词-数学方法)
  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助