找回密码
 立即注册

QQ登录

只需一步,快速开始

游戏开服表 申请开服
游戏名称 游戏描述 开服状态 游戏福利 运营商 游戏链接
广告位招租 联系QQ51605539 今日新开 进入游戏
Close
查看: 412|回复: 5

[数据库工具] mysql批量insert数据的方法技巧

[复制链接]
  • 打卡等级:殷海萨
  • 打卡总天数:875
  • 打卡月天数:14
  • 打卡总奖励:5460
发表于 2023-10-16 09:11:34 | 显示全部楼层 |阅读模式
在MySQL数据库中,批量插入数据是一种高效的方式,可以显著提升数据插入的速度。相比逐条执行插入语句,批量插入可以在单个操作中插入多行数据,减少了与数据库的交互次数。如果您希望使用批量插入的方法将大量数据快速导入到MySQL数据库中,下面将介绍几种常用的方法和技巧,包括使用insert语句,load data infile语句,和replace语句。
方法一、使用insert语句批量插入数据
insert语句可以一次插入多行数据,只需要在values子句中用逗号分隔每一行的值。例如:
INSERT INTO table_name (col1, col2, col3) VALUES
(val1_1, val1_2, val1_3),
(val2_1, val2_2, val2_3),
(val3_1, val3_2, val3_3);
这种方法的优点是简单易用,缺点是如果要插入的数据量很大,可能会导致语句过长或者超过MySQL的最大允许包大小。
方法二、使用load data infile语句批量插入数据
load data infile语句可以从一个文本文件中读取数据并插入到表中。例如:
LOAD DATA INFILE '/path/to/file.txt' INTO TABLE table_name
(col1, col2, col3);
这种方法的优点是速度快,可以处理大量数据,缺点是需要有一个文本文件存储数据,并且需要有对该文件的读取权限。
方法三、使用replace语句批量插入数据
replace语句和insert语句类似,但是如果遇到主键或者唯一键冲突的情况,会先删除旧的记录再插入新的记录。例如:
REPLACE INTO table_name (col1, col2, col3) VALUES
(val1_1, val1_2, val1_3),
(val2_1, val2_2, val2_3),
(val3_1, val3_2, val3_3);
这种方法的优点是可以避免重复数据,缺点是可能会删除一些不想删除的数据,并且速度比insert慢。

回复

使用道具 举报

  • 打卡等级:尐精灵
  • 打卡总天数:3
  • 打卡月天数:0
  • 打卡总奖励:8
发表于 2024-4-1 15:56:33 | 显示全部楼层
感谢分享感谢分享感谢分享感谢分享
回复

使用道具 举报

  • 打卡等级:尐精灵
  • 打卡总天数:3
  • 打卡月天数:0
  • 打卡总奖励:8
发表于 2024-4-1 17:05:06 | 显示全部楼层
朕的钱!!!!!!还我!!!!!!!!!
回复

使用道具 举报

  • 打卡等级:尐精灵
  • 打卡总天数:3
  • 打卡月天数:0
  • 打卡总奖励:8
发表于 2024-4-2 01:00:42 | 显示全部楼层
朕的钱!!!!!!还我!!!!!!!!!
回复

使用道具 举报

  • 打卡等级:尐精灵
  • 打卡总天数:3
  • 打卡月天数:0
  • 打卡总奖励:8
发表于 2024-4-2 01:33:18 | 显示全部楼层
朕的钱!!!!!!还我!!!!!!!!!
回复

使用道具 举报

  • 打卡等级:尐精灵
  • 打卡总天数:3
  • 打卡月天数:0
  • 打卡总奖励:8
发表于 2024-4-2 10:58:26 | 显示全部楼层
朕的钱!!!!!!还我!!!!!!!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表