2 a9805943 a9805943 于 2016.03.21 10:26 提问

mybatis 使用between and问题
  <select id="selectByTwoId" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
    select 
    <include refid="Base_Column_List" />
    from message
    where id
    between  #{ido,jdbcType=INTEGER} and  #{idt,jdbcType=INTEGER}
  </select>

代码如图。报错说我的ido没有 ,传入的值也命名为ido,和idt了
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'ido' not found. Available parameters are [0, 1, param1, param2]

4个回答

zhaihonghonghzh
zhaihonghonghzh   2016.03.21 17:14
已采纳

parameterType="java.lang.Integer" 这个类型写成map类型吧 dao层把参数放到map中

a9805943
a9805943   2016.03.21 11:12

好像是多个参数的问题。我改成#{0} adn#{1}是可以用的。不知道怎么回事

mlw519
mlw519   2016.03.21 13:42

parameterType="java.lang.Integer"
这个应该错了

zhaihonghonghzh
zhaihonghonghzh   2016.03.21 17:14

这样后期维护也好维护

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
mysql between and 遇到日期查询边界问题
最近实现一个按日期范围查询列表,例如输入的是日期 2015-11-01到2015-11-03,想得到1号到3号的数据, 执行 select * from table where create_date between '2015-11-01' and '2015-11-03' 结果是1号到2号的数据,这是因为时间范围是1号0时0分0秒到3号0时0分0秒之间的数据, 只需要把后面的日期加一天即可
MyBatis中#{}和${}区别
原文地址:https://github.com/mybatis/mybatis-3/wiki/FAQ What is the difference between #{...} and ${...}? MyBatis interprets #{...} as a parameter marker in a JDBC prepared statement. MyBatis int
mysql中between and处理时间区间不包括右边界的解决办法(三种方案)
1、日期加一天:BETWEEN ‘2017-04-01’ AND DATE_ADD(‘2017-04-04’,INTERVAL 1 DAY);  2、字符拼接:把日期拼接上23:59:59 3、对字段做处理:date_format(oper_date,'%Y-%m-%d')
Mysql,Between And时间
SELECT * FROM task where created_time BETWEEN '2017-07-03' and '2017-07-04' ; 表示 2017-07-03 00:00:00 --2017-07-04 00:00:00,两个边界都包括,这段时间范围的记录, 除此之外,其他时间范围均不包括
mysql 优化之 in between and
SELECT * FROM a WHERE id IN (1,2,3,4,5,6,7…..100) 这个这种sql 怎么优化 方法between and select * from a where id &amp;gt;=1 and id &amp;lt;=100; 改为列名name *select name from a where id &amp;gt;=1 and id &amp;lt;=10...
[mybatis]Example的用法
大家敲淘淘的时候一定都用过example来构建自己的查询语句。
mybatis 模糊查询,与时间段查询
select count(*) from table                        title like CONCAT(CONCAT('%',#{titleName}),'%')                                  and DATE_FORMAT(create_Date, '%Y-%m-%d') >=  DATE_FORMAT(#
myBatis查询某个时间区间数据<if test=""> 如何写判断条件,and 里面的内容怎么写?
需要查询db2数据库表某个时间区间,例如查询user表从2017-01-01到2017-01-31这一个月新增的用户数据,或者只想传一个开始日期beginDate(结束日期endDate)作为条件查询,查询这个beginDate之后或endDate之前所有的新增用户数量 <if test='beginDate!=null or endDate!=null '> and d.LAST_UPT_DA
mybatis使用oracle关键字
**mybatis中如果使用的字段是oracle的关键字,会出现错误 解决方式是 可以使用resultMap**<!-- 预约日历用 --> <resultMap id="FullDateResultMap" type="com.haier.hrssc.reserveschedual.dto.FullcalendaDTO"> <id property="id" colum
Mybatis中如何查询时间段内的数据
最后一个是正确的,前边的三个是可能遇到的坑,给大家展示一下,如果不需要的,可以直接跳到最后看: 有时候我们需要查询一张表内一段时间内操作的数据,大家很容易就想到了 between ? and ? 这个 句型的sql 对不对? ,如果现在需要两个参数(比如一个开始日期,一个结束日期)来传递,需求是选择一个参数或者两个参数都可以查询,但是如下边这个条件判断使用and连接,此时需要两个参数都要有,