Mysql使用存储过程动态批量添加数据
循环批量插入数据
-- 创建存储过程create procedure my_procedure01(in num int(2),out ii int(2))
begin
declare i int(2)default0;
declare str int(2);
while i < num
do
set str =round(rand()*100)+1;
insertinto 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)default0;
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)
分享
微博
微信
打印
举报
上一篇:
处理器主频概念及 xxxGHz 的运算速度
下一篇:
Linux 内核及 GNU/Linux 操作系统的基本体系结构
php开源社区
粉丝 1
博文 389
码字总数 563707
作品 0
长沙
技术主管
关注
私信
提问
加载中
请先登录后再评论。
删除一条评论
评论删除后,数据将无法恢复
取消
确定
相关文章
最新文章
Netty那点事(三)Channel与Pipeline
Channel是理解和使用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: <TextView 运行效果如下: 修改其文本内容...
樂天
2014/03/22
693
1
SQLServer实现split分割字符串到列
网上已有人实现sqlserver的split函数可将字符串分割成行,但是我们习惯了split返回数组或者列表,因此这里对其做一些改动,最终实现也许不尽如意,但是也能解决一些问题。 先贴上某大牛写的s...
cwalet
2014/05/21
9.7K
0
没有更多内容
加载失败,请刷新页面
加载更多
下一页
获取JavaScript数组中的所有唯一值(删除重复项) - Get all unique values in a JavaScript array (remove duplicates)
问题: 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......
javail
30分钟前
11
0
如何检查字符串是否为空? - How to check if the string is empty?
问题: Does Python have something like an empty string variable where you can do: Python是否有类似空字符串变量的内容可以在其中执行: if myString == string.empty: Regardless, wh......
富含淀粉
今天
7
0
您如何存储未跟踪的文件? - How do you stash an untracked file?
问题: 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. 我对一个文件进行了更改,再加上一个新文件,并希......
技术盛宴
今天
39
0
GeoPandas入门 | 01-地理数据介绍
01-地理数据介绍 1.1 Python地理空间矢量数据简介 %matplotlib inlineimport pandas as pdimport geopandas 导入地理数据 地理空间数据通常可以从特定的GIS文件格式或数据存储中获得,如...
酱肉包-
今天
25
0
OSChina 周三乱弹 —— 我是不是也有王室血统
Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @小小编辑推荐,《我们》- 陈奕迅 《我们》- 陈奕迅 手机党少年们想听歌,请使劲儿戳(这里) @举个栗子OSC :快抬头看天!!! 雨后还有彩虹...
小小编辑
今天
59
1
没有更多内容
加载失败,请刷新页面
加载更多
下一页
OSCHINA 社区
关于我们
联系我们
合作伙伴
Open API
在线工具
码云 Gitee.com
企业研发管理
CopyCat-代码克隆检测
实用在线工具
微信公众号
OSCHINA APP
聚合全网技术文章,根据你的阅读喜好进行个性推荐
下载 APP
©OSCHINA(OSChina.NET)
工信部
开源软件推进联盟
指定官方社区
深圳市奥思网络科技有限公司版权所有
粤ICP备12009483号
顶部
以上是 Mysql使用存储过程动态批量添加数据 的全部内容, 来源链接: utcz.com/z/535159.html