咨询insert插入数据

咨询insert插入数据

问题描述:

为什么需要加入这一行代码呀,加这个id,前面代码不是已经insert插入数据成功了吗?

相关截图:

62b3cc950001f5b708200360.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小小 2022-06-23 13:14:55

同学你好,是的前面的语句即可完成插入操作。后一部分代码的作用是:获取当前连接中最后产生的id号,并将获取到的id值赋值给原始Goods对象的goodsId属性。若无需获取也可以不添加,不添加时goodsId未被赋值其值为默认值null。

祝学习愉快~


  • 提问者 Star3327752 #1

    为啥id的赋值不在前面插入的时候一起跟着赋值呢?

    2022-06-23 14:06:27
  • 好帮手慕小小 回复 提问者 Star3327752 #2

    同学你好,也是可以的,但需要设置如下属性。参考代码如下:

    <insert id="insert" parameterType="com.imooc.mybatis.entity.Goods" flushCache="true"
            useGeneratedKeys="true" keyProperty="goodsId" >
        INSERT INTO t_goods (title, sub_title, original_cost, current_price, discount, is_free_delivery, category_id)
        VALUES (#{title} , #{subTitle} , #{originalCost}, #{currentPrice}, #{discount}, #{isFreeDelivery},#{categoryId})
    </insert>

    其中:useGeneratedKeys取值范围为true|false(默认值),设置是否使用getGenereatedKeys方法获取主键并赋值到keyProperty设置的对象属性中。keyProperty为实体类中主键属性名。

    祝学习愉快~

    2022-06-23 14:45:15
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师