Mysql使用存储引擎进行批量插入数据

Posted 赵晓东-Nastu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql使用存储引擎进行批量插入数据相关的知识,希望对你有一定的参考价值。

一、简介

今天和我们小组进行mysql的优化的时候,需要进行把数据往表里面进行插入,所以就使用了存储过程进行多行的插入

二、使用过程

表的结构
在这里插入图片描述

(1)创建存储过程

DELIMITER $$
USE `mysql_test1`$$
DROP PROCEDURE IF EXISTS `proc_user`$$

CREATE DEFINER=`root`@`%` PROCEDURE `proc_user`()
BEGIN
   DECLARE author_id int(10);
   DECLARE category_id int(10);
   DECLARE views int(10);
   DECLARE comments int(10);
	 DECLARE i INT DEFAULT 1 ;
   DECLARE title int(10);
   DECLARE content text;
   -- 调试过程, 先插入5条
   WHILE i <= 1005 DO
     -- user_name = test + i
     SET author_id =i;
     SET category_id = i;
     SET views= i;
     -- id = rand_id + i, +i的目的主要是为了区分测试数据与user_name对应
     SET comments = i;
     SET title = i;
     SET content = '123';

     INSERT INTO  `article`(author_id,
       category_id,
      views,
      comments,
      title,
      content)
     VALUES(i,
       i,
      i,
     i,
      i,
      '1'
      );
     SET i=i+1;
     END WHILE;
END$$

(2)调用存储过程

 CALL `proc_user`();

(3) 查看结果

在这里插入图片描述
参考资料:https://www.cnblogs.com/simple1025/p/11297284.html

以上是关于Mysql使用存储引擎进行批量插入数据的主要内容,如果未能解决你的问题,请参考以下文章

批量向MySQL导入1000万条数据的优化

mysql存储过程怎样批量插入数据

MYSQL存储引擎InnoDB(二十三):排序索引构建

mysql存储过程批量向表插入数据

MYSQL批量插入语句怎么写

php分享二十七:批量插入mysql