MyBatis报错 Parameter 'arg0' not found

dao中定义方法:

List<KeyValueEntity> groupByDay(Date startDate, Date endDate);

在早期,参数没做注解时默认是按顺序获取,以0、1等为索引,所以Mapper是这样写的:

    <select id="groupByDay" resultType="io.renren.modules.business.entity.template.KeyValueEntity">
        select DATE_FORMAT(create_time, '%Y/%m/%d') as keyText, count(*) as value
        from question_answer
        where create_time BETWEEN #{0, jdbcType=DATE} AND #{1, jdbcType=DATE}
        group by keyText
        order by keyText
    </select>

后来由0、1改为用arg0、arg1代替:

    <select id="groupByDay" resultType="io.renren.modules.business.entity.template.KeyValueEntity">
        select DATE_FORMAT(create_time, '%Y/%m/%d') as keyText, count(*) as value
        from question_answer
        where create_time BETWEEN #{arg0, jdbcType=DATE} AND #{arg1, jdbcType=DATE}
        group by keyText
        order by keyText
    </select>

而新版的又改成以参数名使用:

    <select id="groupByDay" resultType="io.renren.modules.business.entity.template.KeyValueEntity">
        select DATE_FORMAT(create_time, '%Y/%m/%d') as keyText, count(*) as value
        from question_answer
        where create_time BETWEEN #{startDate, jdbcType=DATE} AND #{endDate, jdbcType=DATE}
        group by keyText
        order by keyText
    </select>

对于当前库的强制更新,可以使用命令:

mvn clean install -U

对于下面打包命令,也是会使用新库:

mvn clean package

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏杨建荣的学习笔记

数据库文件的迁移

关于数据库中的文件迁移,需要考虑普通数据文件,redo日志文件(还需要考虑是否为current状态),undo表空间,临时表空间,system,sysaux表空...

3754
来自专栏杨建荣的学习笔记

关于分区表的在线重定义(r5笔记第98天)

目前项目中有一个问题,存在一个分区表,因为分区规则的问题,使得分区表中的数据分布很不均匀,数据都分区在了默认的maxvalue分区上。现在需要重新划分分区。从常...

28810
来自专栏乐沙弥的世界

批量生成sqlldr文件,高速卸载数据

      SQL*Loader 是用于将外部数据进行批量高速加载的数据库的最高效工具,可用于将多种平面格式文件加载到Oracle数据库。SQL*Loader支...

1702
来自专栏Android相关

SQLite---使用触发器(Trigger)

当数据库中的数据太多时,往往需要进行清理,将一些过时的数据删除,但是往往找不到合适的时机进行清理。于是SQLite提供了Trigger,当某些事件发生时,可以触...

1455
来自专栏数据和云

书接上文:薛定谔的猫是如何诞生的?

编辑手记:注重细节,是DBA必要的基本素质要求。 书接上文(参考:空与非空 - 数据库中也有薛定谔的猫?),其实CBO的判断本身是没有问题的,问题在于,为什...

30310
来自专栏SpringBoot

mybatis 批量更新问题

3211
来自专栏杨建荣的学习笔记

走索引扫描的慢查询(r3笔记45天)

今天查看awr报告的时候,发现一条sql语句异常。 Elapsed Time (s) Executions Elapsed Time per Exec (s)...

3818
来自专栏乐沙弥的世界

MongoDB 稀疏(间隙)索引(Sparse Indexes)

a、间隙索引就是创建索引的索引列在某些文档上列不存在,导致索引存在间隙。 b、间隙索引在创建时应指定选项:{ sparse: true } c、间隙索引...

994
来自专栏乐沙弥的世界

SQLserver 存储过程执行错误记录到表

661
来自专栏乐沙弥的世界

PL/SQL --> DML 触发器

何谓触发器?简言之,是一段命名的PL/SQL代码块,只不过该代码块在特定的条件下被触发并且执行。对于这样的代码我们称之为触发器

1013

扫码关注云+社区

领取腾讯云代金券