mybatis中SQL server的查询拼接很麻烦,我们一般会借助mybatisplus的功能快速查询,快捷方便。
但是最近在项目中发现在进行对日期的区间条件限定的时候,出现了这样的问题:
数据类型 datetime2 和 varbinary 在 greater than or equal to 运算符中不兼容
刚出问题的时候一脸懵逼好吗?什么东西?
百度许久得到的答案都是使用cast转换日期格式等,我尝试了一遍是可以解决日期格式出现的问题,但是底层代码执行的时候又会出现其他问题,比如分页时,会前置查询一个全部条数的sql无法正常执行。
最后在pojo的属性类中,对于日期类型的属性修改了它的注解参数:
@TableField(jdbcType = JdbcType.VARCHAR)
完美解决,特此纪念!