博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL循环语句之while循环测试
阅读量:6347 次
发布时间:2019-06-22

本文共 1886 字,大约阅读时间需要 6 分钟。

转自:http://www.nuoweb.com/database/7614.html
MySQL有循环语句操作,while 循环、loop循环和repeat循环,目前我只测试了 while 循环,下面与大家分享下

mysql 操作同样有循环语句操作,网上说有3中标准的循环方式: while 循环 、 loop 循环和repeat循环。还有一种非标准的循环: goto。 鉴于goto 语句的跳跃性会造成使用的的思维混乱,所以不建议使用。

这几个循环语句的格式如下:

WHILE……DO……END WHILE
REPEAT……UNTIL END REPEAT
LOOP……END LOOP
GOTO。

目前我只测试了 while 循环:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
delimiter $$    // 定义结束符为 $$
drop
procedure
if exists wk; // 删除 已有的 存储过程
create
procedure
wk()      //  创建新的存储过程
begin
declare
i
int
;          // 变量声明
set
i = 1;     
while i < 11 do           // 循环体
insert
into
user_profile (uid)
values
(i);
set
i = i +1;
end
while;
end
$$               // 结束定义语句
 
// 调用
 
delimiter ;          // 先把结束符 回复为;
call wk();

delimter : mysql 默认的 delimiter是; 告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了。

这里使用 delimiter 重定义结束符的作用是: 不让存储过程中的语句在定义的时候输出。

创建 MySQL 存储过程的简单语法为:

1
2
3
4
5
6
7
CREATE
PROCEDURE
存储过程名称( [
in
|
out
| inout] 参数 )
 
BEGIN
 
Mysql 语句
 
END

调用存储过程:

1
call 存储过程名称() // 名称后面要加()
1
<
span
style
=
"color: rgb(57, 57, 57); font-family: verdana, 'ms song', Arial, Helvetica, sans-serif; font-size: 14px; line-height: 21px; background-color: rgb(250, 247, 239);"
>二 、 REPEAT 循环</
span
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<pre
name
=
"code"
class=
"html"
>delimiter //
drop
procedure
if exists looppc;
create
procedure
looppc()
begin
declare
i
int
;
set
i = 1;
 
repeat
insert
into
user_profile_company (uid)
values
(i+1);
set
i = i + 1;
until i >= 20
 
end
repeat;
 
 
end
//
 
---- 调用
call looppc()

三、 LOOP 循环

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
delimiter $$
drop
procedure
if exists lopp;
create
procedure
lopp()
begin
declare
i
int
;
set
i = 1;
 
lp1 : LOOP              // lp1 为循环体名称 LOOP 为关键字
insert
into
user_profile (uid)
values
(i);
set
i = i+1;
 
if i > 30
then
leave lp1;              // 离开循环体
end
if;
end
LOOP;              // 结束循环
end
$$

转载于:https://www.cnblogs.com/sharpest/p/7770247.html

你可能感兴趣的文章
LRUCache 具体解释
查看>>
Activity调用isDestroyed()方法报出,java.lang.NoSuchMethodError
查看>>
使用AFNetworking第三方下载类
查看>>
fhq-treap小结
查看>>
about porting
查看>>
MySQL事务及ACID特性
查看>>
Hadoop_31_MapReduce参数优化
查看>>
linux运维常见英文报错中文翻译(菜鸟必知)
查看>>
[原][osgEarth]添加自由飞行漫游器
查看>>
代码审查 Code Review
查看>>
fastjson如何指定字段不序列化
查看>>
[日常] Go语言圣经--示例: 并发的Echo服务
查看>>
BZOJ1969: [Ahoi2005]LANE 航线规划(LCT)
查看>>
linux内存管理之malloc、vmalloc、kmalloc的区别
查看>>
GreenDao 数据库升级 连接多个DB文件 或者指定不同的model&dao目录
查看>>
M1卡破解(自从学校升级系统之后,还准备在研究下)【转】
查看>>
vue 访问子组件示例 或者子元素
查看>>
linux内核--自旋锁的理解
查看>>
银行卡的三个磁道
查看>>
OpenSSL 提取 pfx 数字证书公钥与私钥
查看>>