Mybatis插入语句useGeneratedKeys="true"的用法

  <!-- 插入新的问题件 -->
    <!-- useGeneratedKeys="true"把新增加的主键赋值到自己定义的keyProperty(id)中 -->
    <insert id="insert" parameterType="jw.base.entity.WrongRecApply" useGeneratedKeys="true" keyProperty="id" >
        insert into tb_wrong_rec_apply (num, cid,
        `type`, `describe`, solution,
        seller_tel, seller_qq, seller_email,
        buyer_tel, buyer_qq, buyer_email,
        submit_time, update_time, r_wrong_id,
        ext1, ext2, img,state
        )
        values (#{num,jdbcType=VARCHAR}, #{cid,jdbcType=INTEGER},
        #{type,jdbcType=VARCHAR}, #{describe,jdbcType=VARCHAR}, #{solution,jdbcType=VARCHAR},
        #{sellerTel,jdbcType=VARCHAR}, #{sellerQq,jdbcType=VARCHAR}, #{sellerEmail,jdbcType=VARCHAR},
        #{buyerTel,jdbcType=VARCHAR}, #{buyerQq,jdbcType=VARCHAR}, #{buyerEmail,jdbcType=VARCHAR},
        #{submitTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}, #{rWrongId,jdbcType=INTEGER},
        #{ext1,jdbcType=VARCHAR}, #{ext2,jdbcType=VARCHAR}, #{img,jdbcType=LONGVARBINARY},#{state,jdbcType=INTEGER}
        )
    </insert>
时间: 2024-10-14 03:31:29

Mybatis插入语句useGeneratedKeys="true"的用法的相关文章

Mybatis各语句高级用法

环境:MySQL5.6,jdk1.8 建议:所有的参数加上@Param resultMap的意义:将查询中得到的结果通过属性的setter方法注入属性里.如果未定义resultMap,则虽然数据库查询成功了但会返回null insert 插入自增主键 如果设置了自增主键,那插入时,主键字段的值必须为0,否则不会自增: 插入字段后返回自增主键的值 <insert id="insert" parameterType="com.iss.blog.po.Article"

mybatis insert语句 返回插入的记录的主键值

Map<String,Object> paymentMp = new HashMap<String,Object>();        paymentMp.put("amount", 12.0 );        paymentMp.put("pay", Attributes.Payment_Pay_No);        paymentMp.put("status", Attributes.Payment_Status_

mybatis 数据库语句 标签

一 . 更新,插入 返回 主键 这个其实是有好几种问题的,先把网上那种先 生成key,再返回的到实体类中的 使用数据库自定义函数nextval('student') ,生成一个key,并把他设置到传入的实体类中的studentId属性上.在执行完此方法后,把该 key 赋值给 studentId属性 <insert id="createStudent" parameterType="data.model.StudentEntity" keyProperty=&

表主键自增长Mybatis插入数据报错

在使用MyBatis进行开发的过程中,当你遇到向某张数据库表中插入一条记录时,出现数据插入不正确,如果自己确定是因为主键的原因,类似如下错误提示: 而你的本意是主键自动增长,那么,可参考如下方法尝试解决: 第一步:在配置中设置主键为自增长(数据库我使用的是MySql) 如果你是使用MyBatis自动生成的插入语句,除了设置上面给出的useGeneratedKeys="true"之外,还需要将如下图所示红色部分去掉,这是查询主键最大值的一段代码. 如果还未解决,这时你应该检查一下你的数据

使用mybatis插入自增主键ID的数据后返回自增的ID

在开发中碰到用户注册的功能需要用到用户ID,但是用户ID是数据库自增生成的,这种情况上网查询后使用下面的方式配置mybatis的insert语句可以解决: 1 <insert id="insert" keyProperty="id" useGeneratedKeys="true"? parameterType="com.demo.domain.User">? 2 insert into User_t(name,ag

Mybatis 插入null值报错

解决方法: 1.在settings中配置 <setting name="jdbcTypeForNull" value="OTHER"/> MyBatis-config.xml 中 set 的说明 []: 表示 可能的不太正确 <!-- 配置设置 --> <settings> <!-- 配置全局性 cache 的 ( 开 / 关) default:true --> <setting name="cache

mybatis框架(6)---mybatis插入数据后获取自增主键

mybatis插入数据后获取自增主键 首先理解这就话的意思:就是在往数据库表中插入一条数据的同时,返回该条数据在数据库表中的自增主键值. 有什么用呢,举个例子: 你编辑一条新闻,同时需要给该新闻打上标签(可以一个或者多个:比如:女性,爱,钱等等),然后存储到数据库中.怎么存,肯定涉及到三张表,新闻表,标签表,新闻标签id关联表 新闻表插入数据简单,标签表插入数据简单.那新闻标签表呢,如何关联,那是不是需要新闻表和标签表插入数据的时候,返回它们的主键Id然后再存储到新闻标签表中. 这种场景还是蛮常

Mybatis 插入数据后返回主键值

Oracle中获取刚刚插入记录的主键值: <insert id="insertSelective" parameterType="com.jxxx.p2pp.model.UUserInfo">     <selectKey resultType="java.math.BigDecimal" order="BEFORE" keyProperty="id">    SELECT U_US

MyBatis插入数据之后返回插入记录的id

MyBatis插入数据的时候,返回该记录的id <insert id="insert" keyProperty="id" useGeneratedKeys="true"? parameterType="com.demo.domain.CountRateConfig">? insert into query_rate_config (code,partner_type,search_count, booking_co