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>