我想仅在它为null时才插入非空值。如果为null,则让DB插入默认值。
<insert id ="inventorySave">
<[CDATA[
INSET INTO inventory
(itemname,amount,id,level)
values
]]
<foreach item="inventory" collection="inventoryies" separator=",">
<[CDATA[
(#{inventory.itemName},#{inventory.amount}, #{inventory.id}, #{inventory.level})
]]
</foreach>
</insert>
我想查看&#39;等级&#39;的值。是一个有效的字符串:&#39;普通&#39;,&#39;重要&#39;严重&#39;。如果它有空字符串或null,则不应指定任何字符串,并让数据库决定插入其默认值。
任何人都让我知道如何有条件地插入记录。
答案 0 :(得分:1)
将所有dymanic值等同于 jdbcType ,即数据库列类型,以实现您的期望。
例如,根据您的上述查询更改level
,如下所示,其他实体也是如此:
#{inventory.level,jdbcType=NVARCHAR}
//assuming the equivalent column type in database for itemname is varchar.