zoukankan      html  css  js  c++  java
  • mysql插入大量数据

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

    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)),FLOOR(22 + (RAND() * 18)),NOW(),80,143);
    SET i = i + 1; 
    END WHILE; 
    END$$
    
    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)

     

  • 相关阅读:
    terminal
    变量提升、函数提升
    ssh传输文件
    mocha测试框架
    npm-run 自动化
    webpack
    浅析babel
    构建工具gulp
    C++中TRACE宏及assert()函数的使用
    memcpy函数-C语言
  • 原文地址:https://www.cnblogs.com/huny/p/10518956.html
Copyright © 2011-2022 走看看