mybaits 插入数据时 如果是日期类型 一定要指明

   问题:

    

<insert id="saveSysRecommendConfig" parameterType="com.xingshoufu.common.vo.SysRecommendConfig">
		<selectKey resultType="Long" order="BEFORE" keyProperty="recommendConfigId">
			SELECT SEQ_T_SYS_RECOMMEND_CONFIG.nextval AS recommendConfigId FROM DUAL
		</selectKey>
        INSERT INTO T_SYS_RECOMMEND_CONFIG (
        RECOMMEND_CONFIG_ID ,RECOMMEND_CONFIG_NAME ,USER_ROLE_ID ,RECOMMEND_CYCLE ,RECOMMEND_TIME ,VALID_FLAG ,CREATE_TIME ,UPDATE_TIME 
        ) VALUES (
        #{recommendConfigId,jdbcType=DECIMAL} ,#{recommendConfigName,jdbcType=VARCHAR} ,#{userRoleId,jdbcType=DECIMAL} ,#{recommendCycle,jdbcType=DECIMAL} ,#{recommendTime,jdbcType=DECIMAL} ,#{validFlag,jdbcType=DECIMAL} ,#{createTime} ,#{updateTime}
        )
	</insert>

插入操作一直报:java.sql.SQLException: 无效的列类型

后来发现是日期没有指明数据类型导致 无法识别

改后:

<insert id="saveSysRecommendConfig" parameterType="com.xingshoufu.common.vo.SysRecommendConfig">
		<selectKey resultType="Long" order="BEFORE" keyProperty="recommendConfigId">
			SELECT SEQ_T_SYS_RECOMMEND_CONFIG.nextval AS recommendConfigId FROM DUAL
		</selectKey>
        INSERT INTO T_SYS_RECOMMEND_CONFIG (
        RECOMMEND_CONFIG_ID ,RECOMMEND_CONFIG_NAME ,USER_ROLE_ID ,RECOMMEND_CYCLE ,RECOMMEND_TIME ,VALID_FLAG ,CREATE_TIME ,UPDATE_TIME 
        ) VALUES (
        #{recommendConfigId,jdbcType=DECIMAL} ,#{recommendConfigName,jdbcType=VARCHAR} ,#{userRoleId,jdbcType=DECIMAL} ,#{recommendCycle,jdbcType=DECIMAL} ,#{recommendTime,jdbcType=DECIMAL} ,#{validFlag,jdbcType=DECIMAL} ,#{createTime,jdbcType=DATE} ,#{updateTime,jdbcType=DATE}
        )
	</insert>

总结:开发在于细节,不能偷懒

你可能感兴趣的:(mybaits 插入数据时 如果是日期类型 一定要指明)