数据库小结

2018-02-09  本文已影响3人  墨色尘埃

1、数据库Left JOIN
一对多,Left JOIN左连接,数据不会增多
多对一,Left JOIN左连接,数据不会增多
2、sql报错,因为没有指定表名的别名V
UPDATE t_order_refund SET V.NODE_ID = ? WHERE REFUND_ID = ?
3、今天在调接口时遇到一个问题,新增信息数据库报错,查了好多遍最后才发现xxMapper.xml中写错了

错误的
<if test="agenLevel!=null">
    #{agenLevel!=null, jdbcType=VARCHAR},
</if>
<if test="conPerson!=null">
    #{conPerson!=null, jdbcType=VARCHAR},
</if>
<if test="conPhone!=null">
    #{conPhone!=null, jdbcType=VARCHAR},
</if>
正确的
<if test="agenLevel!=null">
    #{agenLevel, jdbcType=VARCHAR},
</if>
<if test="conPerson!=null">
    #{conPerson, jdbcType=VARCHAR},
</if>
<if test="conPhone!=null">
    #{conPhone, jdbcType=VARCHAR},
</if>

4、在xxMapper.xml新增了一个查询userId语句,返回
List<String> nameList = userMapper.selectByName();但是因为将resultType写成了resultMap,导致连不想关的登陆接口都登陆不上去了,很是莫名其妙,所以一定要注意!

//返回的是resultType,不是resultMap
<select id="selectByName" parameterType="java.util.Map" resultType="java.lang.String">
        select
        USER_ID
        from v_user u
        <where>
            <if test="orgId!=null">
                AND ORG_ID = #{orgId,jdbcType=VARCHAR}
            </if>
            <if test="userId!=null">
                AND USER_ID = #{userId,jdbcType=VARCHAR}
            </if>
            <if test="userName!=null">
                AND USER_NAME like #{userName,jdbcType=VARCHAR}
            </if>
            <if test="status!=null">
                AND STATUS = #{status,jdbcType=INTEGER}
            </if>
            <if test="userType!=null">
                AND USER_TYPE = #{userType,jdbcType=INTEGER}
            </if>
        </where>
    </select>
上一篇下一篇

猜你喜欢

热点阅读