Mysql使用存储过程与函数进行批量插入数据
批量插入
第一步表格
SET FOREIGN_KEY_CHECKS=0;-- ----------------------------
-- Table structure for dept
-- ----------------------------
DROP TABLE IF EXISTS `dept`;
CREATE TABLE `dept` (`id` int(11) NOT NULL AUTO_INCREMENT,`deptno` int(11) NOT NULL,`dname` varchar(50) NOT NULL,`loc` varchar(50) NOT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=gbk;-- ----------------------------
-- Table structure for emp
-- ----------------------------
DROP TABLE IF EXISTS `emp`;
CREATE TABLE `emp` (`id` int(11) NOT NULL AUTO_INCREMENT,`empno` int(11) DEFAULT NULL,`ename` varchar(255) DEFAULT NULL,`job` varchar(255) DEFAULT NULL,`mgr` varchar(255) DEFAULT NULL,`hiredate` datetime DEFAULT NULL,`sal` varchar(255) DEFAULT NULL,`comm` varchar(255) DEFAULT NULL,`deptno` int(11) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8;
第二部开关
第三部创建函数
create function rand_string(n int) returns varchar(255)
begindeclare chars_str varchar(100) default 'abcdefghigklmnopqrstuvwxyz';declare return_str varchar(255) default '';declare i int default 0;while i < ndoset return_str = concat(return_str, substring(chars_str, floor(1 + rand() * 52), 1));set i = i + 1;end while;return return_str;
end;
select rand_string(5);
create function rand_num() returns int(5)
begindeclare i int default 0;set i = floor(100 + rand() * 10);return i;
end;
select rand_num();
第四部存储过程
create procedure insert_emp(in start int(10), in max int(10))
begindeclare i int default 0;set autocommit = 0;repeatset i = i + 1;insert into emp(id,empno, ename, job, mgr, hiredate, sal, comm, deptno)values (i,(start + i), rand_string(8), 'saleman', 0001, '2020-12-12', 12, 'd', rand_num());until i = maxend repeat;#记录一次性提交commit;
end;
create procedure insert_dept(in start int(10), in max int(10))
begindeclare i int default 0;set autocommit = 0;repeatset i = i + 1;insert into dept(deptno,dname,loc)values ((start + i), rand_string(10),rand_string(8));until i = maxend repeat;#记录一次性提交commit;
end;
第五步调用
call insert_dept(10000,10000);
call insert_emp(10000,10000);
第六部结果
Mysql使用存储过程与函数进行批量插入数据相关推荐
- MySQL高级知识(十)——批量插入数据脚本
前言:使用脚本进行大数据量的批量插入,对特定情况下测试数据集的建立非常有用. 0.准备 #1.创建tb_dept_bigdata(部门表). create table tb_dept_bigdata( ...
- mysql存储过程--往表中批量插入数据
为什么80%的码农都做不了架构师?>>> 1.创建表: create test_a( id int); 2.创建存储过程 delimiter $$ create procedu ...
- mysql 存储过程 队列_mysql使用存储过程函数实现批量插入
写这边文章的目的,是想结合mysql 存储过程+函数完成一个批量删除的功能吧...正好也好加深下对procedure和function的熟练操作吧... 废话不多说,我就直接上表结构啦哈,如下: cr ...
- mysql批量插入数据的函数和存储过程
-- 创建函数前,设置 set global log_bin_trust_function_creators=TRUE; -- 新建函数-产生随机的字符串 drop function if exist ...
- mysql使用函数批量插入数据
不管是在做并发测试还是大数据的压力测试时,我们都需要造很多的用户或者记录数据,经常就需要用到往数据库批量插入数据,以满足测试需求. 以下实例使用的是mysql数据库,客户端为Navicat 1.选择需 ...
- MySQL(一) Python操控mysql批量插入数据
在Python中,通过pymysql模块,编写简短的脚本,即方便快捷地控制MySQL数据库 一.连接数据库 使用的函数:pymysql.connect 语法:db=pymysql.connect(ho ...
- Mysql 如何批量插入数据
比如你需要造一些压测数据,150万条,怎么快速做到呢? 下面使用存储函数和存储过程来批量插入数据. # 1.创建数据库: create database bigData; use bigData;# ...
- MySQL 案例实战--MySQL数据库 存储过程 存储函数
MySQL数据库 存储过程 & 存储函数 前言 一.什么是存储过程 & 存储函数 二.存储过程的创建和调用 三.存储函数的创建和调用 前言 本环境是基于 Centos 7.8 系统构建 ...
- MySQL批量插入数据的几种方法
最近公司要求测试数据库的性能,就上网查了一些批量插入数据的代码,发现有好几种不同的用法,插入同样数据的耗时也有区别 别的先不说,先上一段代码与君共享 方法一: package com.bigdata; ...
最新文章
- LeetCode简单题之三角形的最大周长
- dede修改mysql,Dedecms(织梦)程序MySQL修复表和文章路径修改方法
- 科大星云诗社动态20210420
- CSS基础:text-overflow:ellipsis溢出文本的显示样式
- html中电子邮件怎么写,谈html mailto(电子邮件)实际应用
- teched2006会议资料
- ffmpeg获取视频截图
- Hadoop 1.x和Hadoop 2.x,Hadoop 1.x局限性和Hadoop 2.x YARN优点之间的区别
- react中对props.children进行操作
- Laravel框架安装
- 搭建Visual Studio C语言开发环境
- 微信小程序怎么开通店铺呢?
- ·「笔记」安装composer -- 安装phpspreadsheet
- java基础,进阶(二)
- python扩展库用于科学计算的有哪些_数据科学必备的十大 Python 库
- “源”来是你-Vol.37 | 知名开源企业StreamNative 招募开源社区运营和开源布道师!...
- 如何用HTML和css实现简单的手风琴菜单效果,附带详细注释
- 2.4g语音遥控器小结
- Rockchip Android平台GPU/DDR负载变频阈值调整方法
- 网站带不带www真的不一样,很多新手不知道区别会被坑死的
热门文章
- MyCat好的博文收集
- Kafka中topic的Partition,Kafka为什么这么快,Consumer的负载均衡及consumerGroup的概念(来自学习笔记)
- 什么是HADOOP、产生背景、在大数据、云计算中的位置和关系、国内外HADOOP应用案例介绍、就业方向、生态圈以及各组成部分的简介(学习资料中的文档材料)
- 1.Maven+SpringMVC+Eclipse软件安装配置,Maven报插件错误,Eclipse总是卡死的解决办法,导入一个maven工程后 一直显示importing maven project
- apt-get install用发
- 深度学习之windows python faster rcnn 配置及demo运行
- 设备的阻塞与非阻塞操作
- goland 配置goroot找不到SDK
- 甲骨文中国公司如何如何打赢这场裁员翻身仗?
- NOIp 数据结构专题总结 (1):STL、堆、并查集、ST表、Hash表