• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > mybaits批量插入该如何操作

mybaits批量插入该如何操作

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了mybaits,总结,入时,一些等相关知识,希望本文的分享对您有所帮助
我们时长在批量插入时,需要获取插入数据的id.

这样:

<insert id="insertUser" parameterType="gys.entity.User" keyProperty="userId" useGeneratedKeys="true">INSERT INTO `user` (userName) VALUES (#{userName})</insert>

这样是没问题的.

但是有时候牵扯到批量插入,并且获取插入的id

这样写:

<insert id="insertUserBatch1" keyProperty="userId" useGeneratedKeys="true">INSERT INTO `user` (userName) VALUES<foreach collection="list" separator="," item="item">(#{item.userName})</foreach></insert>

这样运行后就会出现异常了.

这是因为你用的mybatis版本过低.比如我用的是3.2.2版本,这是mybatis的一个bug.

如果你换成3.4.4版本就没有问题了.

上面的sql语句换个写法 就又会报异常了(将insert包围在foreach里面)

比如:

<insert id="insertUserBatch2"> <foreach collection="list" separator=";" item="item"> INSERT INTO `user` (userName) VALUES (#{item.userName}) </foreach></insert>

同理还有update的批量更新也是有这个问题

<update id="updateUserBatch"><foreach collection="list" item="item" separator=";">update `user` set userName=#{item.userName} where userId=#{item.userId}</foreach></update>

这是因为mybatis默认是只能执行一条sql语句,

可以再链接路径的时候加上参数,就可以执行多条sql语句了.allowMultiQueries=true

以上就是mybaits批量插入该如何操作的详细内容,更多请关注微课江湖其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • mybaits批量插入该如何操作

相关文章

  • 2018-12-05详解在mysql查询时,offset过大影响性能的原因与优化方法
  • 2017-05-11mysql 双向同步的键值冲突问题的解决方法分享
  • 2018-12-05MySQL中prepare、execute与deallocate的用法详解
  • 2018-12-05MYSQL无法启动提示: Default storage engine (InnoDB) is not a
  • 2018-12-05详解插入记录的用法实例教程
  • 2018-12-05详细介绍centos编译安装mysql5.6及安装多个mysql的示例代码分享
  • 2018-12-05通过分析SQL语句的执行计划优化SQL
  • 2018-12-05关于mysql 严格模式 Strict Mode的说明讲解
  • 2018-12-05 关于SQL Server 2005安装失败的处理方法
  • 2018-12-05【MySQL】MySQL的数据类型优化

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • 在MySQL数据库中复位根用户的密码的方法
    • MySQL DBA教程:Mysql性能优化之缓存参数优化
    • MySQL 性能优化,让数据库跑的更快
    • MYSQL主从库不同步故障一例解决方法
    • MySQL 常用命令
    • MySQL 分组后取时间最新记录
    • SQL中函数 replace 的参数1的数据类型ntext无效的解决方法
    • 深入JDBC sqlserver连接写法的详解
    • 讲解SQL Server执行相关动态SQL的正确方式
    • mysql中的引擎

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有