mybatis mysql 数据库 insert 插入数据返回主键

发布网友 发布时间:2022-04-21 22:46

我来回答

4个回答

懂视网 时间:2022-04-08 22:47

</insert>

其中id表示的是dao中的添加方法,

parameterType代表的是dao中的参数类型,

useGeneratedkeys表示的是jdbc的getGeneratedkeys方法获取主键并赋值到keyProperty设置的模型中。默认为false,设置为true才能执行。在sql server和mysql中支持自增长的id,可以使用,在oracle中不支持自增长,所以不能使用。

keyProperty表示的是要返回的主键。

dao中方法:

public Integer addProduct(Product product);

javaBean中product的属性

 1 public class Product implements Serializable{
 2 
 3 private Integer id;
 4 
 5 public Integer getId() {
 6  return id;
 7  }
 8 public void setId(Integer id) {
 9  this.id = id;
10  }
11 }

 

mybaits中插入到mysql数据库自动返回id主键

标签:

热心网友 时间:2022-04-08 19:55

parameterType String?
那你selectKey获得的id放在哪个对象里呢?
parameterType应该是一个model对象,有id和content两个属性才对追问我想的是传入数据只有个字符串,然后就希望不创建对象去存这个,直接存入字符串之后返回对应的主键ID值

热心网友 时间:2022-04-08 21:13

假如你使用一条INSERT语句插入多个行, LAST_INSERT_ID() 只返回插入的第一行数据时产生的值。其原因是这使依靠其它服务器复制同样的 INSERT语句变得简单。
配置是没有错的,问题出现在last_insert_id过程上,该过程的说明见:
http://zhaohe162.blog.163.com/blog/static/38216797201122411193745/

热心网友 时间:2022-04-08 22:47

楼主的问题解决呢?如何解决问题,我也是这个问题,真的不想使用整数意愿,啊,大数据,问题就会出现。我已阅读ibatis2几个版本没有这个问题。追问我后面用的是对象去存了,有个ID属性保存返回的主键ID,在从对象中取出ID就是之前插入的主键值了。我也网上找了,说的是mybatis改成了只返回受影响的了,不返回主键了

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com