Mybatis之if标签使用(Insert操作)


情况一

传入字段值可以根据条件限制而选择插不插入,条件不满足则不拼接到SQL语句,条件满足则拼接到SQL语句

-- trim能够自动删掉最后的,

-- prefix="("	最前面的符号为(
-- suffix=")"	结尾符号为)

-- suffixOverrides=","	不保留最后的逗号

<insert id="insert" parameterType="leftOption" useGeneratedKeys="true" keyProperty="id">
        insert into leftOptions
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="firstTitle != null and firstTitle != ''">
                `firstTitle`
            </if>
            <if test="option != null and option != ''">
                `option`
            </if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="firstTitle != null and firstTitle != ''">
                #{firstTitle}
            </if>
            <if test="option != null and option != ''">
                #{option}
            </if>
        </trim>
</insert>

情况二

不管字段值为啥,数据库直接插入字段值

<insert id="insertOneOption" parameterType="leftOption" useGeneratedKeys="true" keyProperty="id">
        insert into leftOptions(`firstTitle`, `option`) VALUES (#{firstTitle},#{option})
</insert>
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐