zzbert 2019-11-20 10:29 采纳率: 100%
浏览 1733

一个查询语句在navicat中可以执行,但是在mybatis中报错了

报错提示的语句和我写的mybatis中的语句不一样,不知道怎么个回事儿0.0。

mybatis中sql语句:

        SELECT
            t.m_id as 'id',
            t.name,
            t.numbers,
            t.s_id as 'spId',
            t.learned,
            t.learning,
            t.plan_finish_date as 'planFinishDate',
            t.plan,
            t.next_plan as 'nextPlan'
        FROM(
            SELECT
                m.id as 'm_id',
                m.name,
                m.createdate,
                s.numbers,
                s.id as 's_id',
                s.learned,
                s.learning,
                s.plan_finish_date ,
                s.plan,
                s.next_plan
            FROM
                member AS m
            LEFT JOIN study_plan AS s ON m.id = s.m_id
            ORDER BY
                s.numbers DESC
            LIMIT 10000
        ) t
        GROUP BY t.name
        ORDER BY t.createdate

我多粘贴了一些报错信息

Error querying database.  Cause: java.sql.SQLException: sql injection violation, syntax error: syntax error, error in :'
        ) tmp_count',expect RPAREN, actual EOF tmp_count : select count(1) from (SELECT

        t.m_id as 'id',
        t.name as 'name',
        t.numbers as 'numbers',
        t.sp_id as 'spId',
        t.learned as 'learned',
        t.learning as 'learning',
        t.plan_finish_date as 'planFinishDate',
        t.plan as 'plan',
        t.createdate as 'createdate',
        t.next_plan as 'nextPlan'

        FROM (
        SELECT
        m.id as 'm_id',
        m.`name`,
        m.createdate,
        s.numbers,
        s.id as 'sp_id',
        s.learned,
        s.learning,
        s.plan_finish_date ,
        s.plan,
        s.next_plan
        FROM
        member AS m LEFT JOIN study_plan AS s ON m.id = s.m_id
        ) tmp_count
### Cause: java.sql.SQLException: sql injection violation, syntax error: syntax error, error in :'
        ) tmp_count',expect RPAREN, actual EOF tmp_count : select count(1) from (SELECT

        t.m_id as 'id',
        t.name as 'name',
        t.numbers as 'numbers',
        t.sp_id as 'spId',
        t.learned as 'learned',
        t.learning as 'learning',
        t.plan_finish_date as 'planFinishDate',
        t.plan as 'plan',
        t.createdate as 'createdate',
        t.next_plan as 'nextPlan'

        FROM (
        SELECT
        m.id as 'm_id',
        m.`name`,
        m.createdate,
        s.numbers,
        s.id as 'sp_id',
        s.learned,
        s.learning,
        s.plan_finish_date ,
        s.plan,
        s.next_plan
        FROM
        member AS m LEFT JOIN study_plan AS s ON m.id = s.m_id
        ) tmp_count
; uncategorized SQLException for SQL []; SQL state [null]; error code [0]; sql injection violation, syntax error: syntax error, error in :'
        ) tmp_count',expect RPAREN, actual EOF tmp_count : select count(1) from (SELECT

        t.m_id as 'id',
        t.name as 'name',
        t.numbers as 'numbers',
        t.sp_id as 'spId',
        t.learned as 'learned',
        t.learning as 'learning',
        t.plan_finish_date as 'planFinishDate',
        t.plan as 'plan',
        t.createdate as 'createdate',
        t.next_plan as 'nextPlan'

        FROM (
        SELECT
        m.id as 'm_id',
        m.`name`,
        m.createdate,
        s.numbers,
        s.id as 'sp_id',
        s.learned,
        s.learning,
        s.plan_finish_date ,
        s.plan,
        s.next_plan
        FROM
        member AS m LEFT JOIN study_plan AS s ON m.id = s.m_id
        ) tmp_count; nested exception is java.sql.SQLException: sql injection violation, syntax error: syntax error, error in :'
        ) tmp_count',expect RPAREN, actual EOF tmp_count : select count(1) from (SELECT

        t.m_id as 'id',
        t.name as 'name',
        t.numbers as 'numbers',
        t.sp_id as 'spId',
        t.learned as 'learned',
        t.learning as 'learning',
        t.plan_finish_date as 'planFinishDate',
        t.plan as 'plan',
        t.createdate as 'createdate',
        t.next_plan as 'nextPlan'

        FROM (
        SELECT
        m.id as 'm_id',
        m.`name`,
        m.createdate,
        s.numbers,
        s.id as 'sp_id',
        s.learned,
        s.learning,
        s.plan_finish_date ,
        s.plan,
        s.next_plan
        FROM
        member AS m LEFT JOIN study_plan AS s ON m.id = s.m_id
        ) tmp_count

xml截个图
图片说明

  • 写回答

7条回答

  • zhshchilss 2019-11-20 10:43
    关注

    你这两个sql也不一样啊

    评论

报告相同问题?

悬赏问题

  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏