加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql插入大量数据

发布时间:2020-12-12 02:11:06 所属栏目:MySql教程 来源:网络整理
导读:前言:因工作需要经常插入大量数据进行性能测试,故随手记录方便日后巩固和使用。 1.定义存储过程 DELIMITER $$ USE `ilock`$$ #填写你的数据库 DROP PROCEDURE IF EXISTS `insert_lock`$$ CREATE DEFINER = `root`@` % ` PROCEDURE `insert_lock`() BEGIN D

前言:因工作需要经常插入大量数据进行性能测试,故随手记录方便日后巩固和使用。

1.定义存储过程

DELIMITER $$

USE `ilock`$$   #填写你的数据库

DROP PROCEDURE IF EXISTS `insert_lock`$$

CREATE DEFINER=`root`@`%` PROCEDURE `insert_lock`()
BEGIN
DECLARE i INT DEFAULT 0;
WHILE i <=50 DO 
INSERT INTO `iodn_lock`(lock_name`,`longitude`,`latitude`,`create_time`,`city_id`,`area_id`) VALUES(CONCAT('500W',i),FLOOR(80 + (RAND() * 40)),1); font-weight: bold">22 18)),NOW(),80,1); font-weight: bold">143);
SET i = i + 1; 
END WHILEEND$$

DELIMITER ;

call insert_lock();

注意:符号一定要看清楚。博主之前被一个符号折腾了半天。`是TAB键上面的符号不是单引号哦。DELIMITER;的引号如果报语法错误就改成$$,这里也让博主耗了不少时间。

说明:i<10000是控制插入数据的条数,本人测试循环插入1万条数据,大概执行时间为1分钟28秒左右。

函数? concat(x,y,z):生成字符进行相加连接

? ? ? ? ? floor(10):生成随机生成小于10的整数

  ? ?rand():生成随机生成0-1之间的浮点数

  ? ?now():生成当前日期和时间

? ? ? ? ? 随机范围10-200的数字 :floor(10+ rand()*200)

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读