1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| <!-- selectKey元素先运行,设置id,然后再执行插入sql语句 keyProperty: selectKey语句结果应该被设置的目标属性。 resultType:执行结果的类型。MyBatis通常可以算出来,允许简单类型,包括字符串 order: 可以被设置成BEFORE、AFTER BEFORE: 先执行生成主键,设置keyProperty,然后执行插入语句 AFTER: 先执行插入语句,再设置属性,如oracle,可在插入语句中嵌入序列调用 statementType: 支持statement, prepared, callable分别代表PreparedStatement和CallableStatement类型
--> <insert id="add" parameterType="vo.Category"> <!-- 执行插入数据,先获取序列生成的下一个键,填入参数实体id属性中 --> <selectKey resultType="long" order="BEFORE" keyProperty="id"> SELECT seqitemid.NEXTVAL FROM DUAL </selectKey> insert into category (name_zh, parent_id, show_order, delete_status, description ) values (#{nameZh,jdbcType=VARCHAR}, #{parentId,jdbcType=SMALLINT}, #{showOrder,jdbcType=SMALLINT}, #{deleteStatus,jdbcType=BIT}, #{description,jdbcType=VARCHAR} ) </insert>
|