Mapper.xml中新增数据并返回主键ID(MYSQL)
发布日期:2021-05-10 07:59:19 浏览次数:11 分类:精选文章

本文共 569 字,大约阅读时间需要 1 分钟。

(一)主键为INT类型且自动增长

在MyBatis中,INT类型的主键字段通常使用自动增长功能。这种情况下,可以通过configuration来配置useGeneratedKeys属性为true,然后指定主键字段对应的实体类字段名作为keyProperty。

例如,以下SQL语句实现了这一点:

```xml
insert into orders values(null, #{userId}, now(), #{totalPrice}, 0, 0)
```

在这里,oid字段会自动分配为唯一的INT类型主键值。

(二)主键为String类型且使用UUID作为主键

如果主键为String类型并且使用UUID生成主键,可以通过MyBatis的selectKey标签来实现。在这种情况下,需要使用replace函数去除UUID中的hyphen符号,生成一个有效的String类型主键。

例如,以下SQL语句展示了这一实现方法:

```xml
SELECT replace(uuid(), '-', '')
insert into orders values/#{oid}, #{userId}, now(), #{totalPrice}, 0, 0
```

此外,oid字段需要在插入之前进行selectKey操作以获取唯一的UUID值。

上一篇:顺序栈(C语言)
下一篇:SpringAOP的实现(七)

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月25日 12时15分59秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章