mybatis+mysql返回插入的主键,参数只是提供部分参数

  <insert id="insertByChannelIdOpenid"  useGeneratedKeys="true" keyProperty="id"  parameterType="com.model.StatisticSaler" >
      insert into statistic_saler(city_id,shop_id,saler_id,type,openid,time)
      select city_id,shop_id,saler_id,#{type,jdbcType=VARCHAR},#{openid,jdbcType=VARCHAR},now()
      from channel s where s.id = #{id,jdbcType=INTEGER}
  </insert>

输入的参数只是提供部分参数,在插入的过程中使用了其他的数据库表;

mybatis这个insert语句返回的就是影响的记录条数;

而作为参数的那个对象,会由于使用了

 useGeneratedKeys="true" keyProperty="id"而获得新建记录的id;
时间: 2024-10-14 02:53:28

mybatis+mysql返回插入的主键,参数只是提供部分参数的相关文章

MyBatis+MySQL 返回插入的主键ID

需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如下: <insert id="insertAndGetId" useGeneratedKeys="true" keyProperty="userId" parameterType="com.chenzhou.mybatis.User"> insert into us

【转载】MyBatis+MySQL 返回插入的主键ID

转载出处:http://chenzhou123520.iteye.com/blog/1849881 需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如下: xml代码 <insert id="insertAndGetId" useGeneratedKeys="true" keyProperty="userId" parameterType=

Mybatis + mysql 返回自增主键

网上介绍的方法有很多 此处只写这一种 步骤1: <!--这里设置useGeneratedKeys.keyProperty这两个属性 keyProperty的值对应javaBean中的主键属性--> <insert id="insert"           parameterType="com.asiainfo.category.website.bean.WebsiteClassify"          useGeneratedKeys=&quo

MyBatis+MySQL 返回插入记录的主键ID

今天用到了多个表之间的关系,另一个表中的一个字段要以第一个表的主键作为外键. 下面说两种方法,MyBatis+MySQL 返回插入记录的主键ID: 第一种: <insert id="insertAndGetId" useGeneratedKeys="true" keyProperty="userId" parameterType="com.chenzhou.mybatis.User"> insert into us

hao947 : Mybatis resultMap配置插入和主键自增返回 : 好947

映射配置文件  好947  <!-- type:映射实体类的数据类型 id:resultMap的唯一标识 -->  <resultMap type="person" id="BaseResultMap">   <!-- column:库表的字段名 property:实体类里的属性名 -->   <id column="person_id" property="personId" /&g

Mybatis返回插入的主键

在使用MyBatis做持久层时,insert语句默认是不返回记录的主键值,而是返回插入的记录条数:如果业务层需要得到记录的主键时,可以通过配置的方式来完成这个功能 情景一:针对自增主键的表,在插入时不需要主键,而是在插入过程自动获取一个自增的主键,比如MySQL,可以采用如下两种配置方式 <insert id="insert" useGeneratedKeys="true" keyProperty="id" parameterType=&q

mybatis3 :insert返回插入的主键(selectKey)

Mysql: 主键自增长. *_mapper.xml: <insert id="insert" parameterType="entity" useGeneratedKeys="true"> insert into <include refid="t_user"/> (name, code, version) values (#{name}, #{code}, #{version}) <selec

插入数据返回插入的主键Id

ADO.Net中Sql语句: insert into RoomType(TypeName,Price,AddBed,BedPrice,Remark)output inserted.ID values('kkk',321,1,34,'oooo') EF中: 添加数据保存后直接对象名.ID. 例子:UserInfo userInfo=new UserInfo(); userInfo.UserName="张三"; userInfo.UserPass="123"; EFFr

Mybatis批量插入返回自增主键(转)

我们都知道Mybatis在插入单条数据的时候有两种方式返回自增主键: 1.对于支持生成自增主键的数据库:useGenerateKeys和keyProperty. 2.不支持生成自增主键的数据库:<selectKey>. 但是怎对批量插入数据返回自增主键的解决方式网上看到的还是比较少,至少百度的结果比较少. Mybatis官网资料提供如下: First, if your database supports auto-generated key fields (e.g. MySQL and SQL