Mysql 使用存储过程动态批量添加数据
循环批量插入数据
-- 创建存储过程
create procedure my_procedure01(in num int(2),out ii int(2))
begin
declare i int(2) default 0;
declare str int(2);
while i < num
do
set str = round(rand()*100) + 1;
insert into p_procedure (name) values (str);
set i = i + 1;
end while;
set ii = i;
end;
-- 删除存储过程
drop procedure my_procedure01;
-- 调用存储过程
call my_procedure01(2, @y);
-- 查询存储过程的输出
select @y;
拼接批量插入数据
-- 创建存储过程
create procedure my_procedure02(in num int(2),out ii text)
begin
declare i int(2) default 0;
declare str int(2);
declare data text;
while i < num
do
set str = round(rand()*100) + 1;
set data = concat("(", str, ")");
-- 存储 alldata 内容的变量必须是全局变量,使用 @ 符修饰
if @insertData = "" then
set @insertData = CONCAT_WS(",", data);
else
set @insertData = CONCAT_WS(",", @insertData, data);
end if;
set i = i + 1;
end while;
-- 存储 sql 内容的变量必须是全局变量,使用 @ 符修饰
set @sql = CONCAT("INSERT INTO p_procedure (name) VALUES ", @insertData);
-- 预处理
PREPARE ins from @sql;
EXECUTE ins;
DEALLOCATE PREPARE ins;
-- 清空全局 @insertData 数据,否则数据会一直追加
set @insertData = "";
-- 输出 sql
set ii = @sql;
end;
-- 调用存储过程
call my_procedure02(2, @ii);
-- 查询存储过程的输出
select @ii;
-- 外部重置全局变量
set @insertData = "";
-- 删除存储过程
drop procedure my_procedure02;
-- 存储过程-实例02 - end
**执行的 sql **
© 著作权归作者所有 打赏 点赞 (0) 收藏 (0) 分享 微博 QQ 微信 打印 举报 上一篇: 处理器主频概念及 xxxGHz 的运算速度 下一篇: Linux 内核及 GNU/Linux 操作系统的基本体系结构
php开源社区
粉丝 1 博文 389 码字总数 563707 作品 0 长沙 技术主管 关注 私信 提问 加载中 请先登录后再评论。 删除一条评论评论删除后,数据将无法恢复
取消 确定 相关文章 最新文章 Netty那点事(三)Channel与PipelineChannel是理解和使用Netty的核心。Channel的涉及内容较多,这里我使用由浅入深的介绍方法。在这篇文章中,我们主要介绍Channel部分中Pipeline实现机制。为了避免枯燥,借用一下《盗梦空间》的...
黄亿华 2013/11/24 2W 22 记一次失败的Perl + Nginx + FastCGI 配置过程这两天心血来潮,不知道为什么和 Perl + Nginx + FastCGI 配置 耗上了。但是失败了,记录如下: 1)安装Nginx 1.4.3 ,我的是WINDOWS 7 系统,修改配置文件如下: location ~ .(pl|cgi|perl)?...
通吃岛-低手哥 2013/10/27 1.7K 7 访问安全控制解决方案本文是《轻量级 Java Web 框架架构设计》的系列博文。 今天想和大家简单的分享一下,在 Smart 中是如何做到访问安全控制的。也就是说,当没有登录或 Session 过期时所做的操作,会自动退回到...
黄勇 2013/11/03 3.5K 8 浅入浅出Android(003):使用TextView类构造文本控件基础: TextView是无法供编辑的。 当我们新建一个项目MyTextView时候,默认的布局(/res/layout/activity_main.xml)中已经有了一个TextView: 网上已有人实现sqlserver的split函数可将字符串分割成行,但是我们习惯了split返回数组或者列表,因此这里对其做一些改动,最终实现也许不尽如意,但是也能解决一些问题。 先贴上某大牛写的s...
没有更多内容 加载失败,请刷新页面
下一页
问题: I have an array of numbers that I need to make sure are unique. 我需要确定一个唯一的数字数组。 I found the code snippet below on the internet and it works great until th...... 问题: Does Python have something like an empty string variable where you can do: Python是否有类似空字符串变量的内容可以在其中执行: if myString == string.empty: Regardless, wh...... 问题: I have changes to a file, plus a new file, and would like to use git stash to put them away while I switch to another task. 我对一个文件进行了更改,再加上一个新文件,并希...... 01-地理数据介绍 1.1 Python地理空间矢量数据简介 %matplotlib inlineimport pandas as pdimport geopandas 导入地理数据 地理空间数据通常可以从特定的GIS文件格式或数据存储中获得,如... Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @小小编辑推荐,《我们》- 陈奕迅 《我们》- 陈奕迅 手机党少年们想听歌,请使劲儿戳(这里) @举个栗子OSC :快抬头看天!!! 雨后还有彩虹...
没有更多内容 加载失败,请刷新页面
下一页
聚合全网技术文章,根据你的阅读喜好进行个性推荐OSCHINA 社区
关于我们
联系我们
合作伙伴
Open API
在线工具
码云 Gitee.com
企业研发管理
CopyCat-代码克隆检测
实用在线工具
微信公众号
OSCHINA APP
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341