Java 使用参数类型int时,MyBatis列类型无效
每当我尝试在查询中使用参数时,就会得到SQLException无效列类型。数据库字段评估id在oracle中的类型为15。如果我将{value}更改为1,那么它将正常工作并返回关注对象列表。但是,当我尝试使用此参数时,会出现SQL异常。我仍然不确定在XML中为变量名添加什么,我尝试使用与传入的变量相同的名称 这是我的映射器配置Java 使用参数类型int时,MyBatis列类型无效,java,mybatis,Java,Mybatis,每当我尝试在查询中使用参数时,就会得到SQLException无效列类型。数据库字段评估id在oracle中的类型为15。如果我将{value}更改为1,那么它将正常工作并返回关注对象列表。但是,当我尝试使用此参数时,会出现SQL异常。我仍然不确定在XML中为变量名添加什么,我尝试使用与传入的变量相同的名称 这是我的映射器配置 <mapper namespace="ConcernMap"> <resultMap id="ConcernResult" type="com.xxx.
<mapper namespace="ConcernMap">
<resultMap id="ConcernResult" type="com.xxx.name.model.Concern" >
<result column="insCurrent" property="insCurrent"/>
</resultMap>
<select id="fetchConcernsByWorkflowId" parameterType="int" resultMap="ConcernResult">
SELECT
INSURANCE_CURRENT as insCurrent
from KOR_CONCERN where assessment_id = #{value}
</select>
</mapper>
尝试将jdbcType=NUMERIC添加到查询中
SELECT
INSURANCE_CURRENT as insCurrent
from KOR_CONCERN where assessment_id = #{value,jdbcType=NUMERIC}
我遇到了类似的错误,但使用了@Results注释 事实证明,Mybatis在Lombok的@Builder中表现不好,并且错误地识别了我的bean的属性类型 从bean中删除@Builder注释解决了这个问题