Heim > Datenbank > MySQL-Tutorial > MySQL-Prozesssteuerung während, wiederholen, Schleifenschleife

MySQL-Prozesssteuerung während, wiederholen, Schleifenschleife

WBOY
Freigeben: 2022-08-09 20:22:12
nach vorne
1944 Leute haben es durchsucht

Dieser Artikel vermittelt Ihnen relevantes Wissen über MySQL. Er stellt hauptsächlich die Prozesssteuerung von MySQL-gespeicherten Prozeduren vor, während der Code in der Schleife eine bestimmte Anzahl von Malen oder bis eine bestimmte Bedingung erfüllt ist . Der Zyklus endet jetzt. Ich hoffe, es wird für alle hilfreich sein.

MySQL-Prozesssteuerung während, wiederholen, Schleifenschleife

Empfohlenes Lernen: MySQL-Video-Tutorial

Vorwort

  • Eine Schleife ist ein Codestück, das nur einmal im Programm vorkommt, aber möglicherweise mehrmals hintereinander ausgeführt wird.
  • Der Code in der Schleife wird eine bestimmte Anzahl von Malen ausgeführt, oder die Schleife wird beendet, wenn eine bestimmte Bedingung erfüllt ist.

Schleifenklassifizierung:

  • while
  • repeat
  • loop

Loop-Steuerung:

leave ähnelt break, herausspringen, Beende die aktuelle Die Schleife

iterate ähnelt continue, continue, beende diese Schleife und fahre mit der nächsten

while-Schleife

【标签:】while 循环条件 do
循环体;
end while【 标签】;
Nach dem Login kopieren
-- 创建测试表
create table user (
uid int primary_key,
username varchar ( 50 ),
password varchar ( 50 )
);
Nach dem Login kopieren
-- -------存储过程-while
delimiter $$
create procedure proc16_while1(in insertcount int)
begin
declare i int default 1;
label:while i<=insertcount do
insert into user(uid,username,`password`) values(i,concat(&#39;user-&#39;,i),&#39;123456&#39;);
set i=i+1;
end while label;
end $$
delimiter ;
call proc16_while(10);
Nach dem Login kopieren

fort. Die Syntax der gespeicherten Prozedur ist festgelegt: delimiter $$ peocedure-Schleife erstellen name (parameter) begin code end $$ delimiter;

Beachten Sie, dass Sie beim Schreiben des Schleifenkörpers die erste Variable haben müssen, um die Schleife zu definieren. Verwenden Sie declare i int default default value

Dann dlabel:while Beurteilungsbedingung tun loop Body end while label; end && must have

-- -------存储过程-while + leave
truncate table user;
delimiter $$
create procedure proc16_while2(in insertcount int)
begin
declare i int default 1;
label:while i<=insertcount do
insert into user(uid,username,`password`) values(i,concat(&#39;user-&#39;,i),&#39;123456&#39;);
if i=5 then leave label;
end if;
set i=i+1;
end while label;
end $$
delimiter ;
call proc16_while2(10);
Nach dem Login kopieren

Wenn Sie intern aus der Schleife ausbrechen müssen, verwenden Sie if-Beurteilung, aber Sie brauchen end if am Ende

leave hier ist, um aus der Schleife herauszuspringen Schleife, relativ zu break

-- -------存储过程-while+iterate
truncate table user;
delimiter $$
create procedure proc16_while3(in insertcount int)
begin
declare i int default 1;
label:while i<=insertcount do
set i=i+1;
if i=5 then iterate label;
end if;
insert into user(uid,username,`password`) values(i,concat(&#39;user-&#39;,i),&#39;123456&#39;);
end while label;
end $$
delimiter ;
call proc16_while3(10);
Nach dem Login kopieren

hier Im Vergleich zu continue führt iterate den folgenden Code nicht aus, wenn es auf eine Wiederholungsschleife trifft

[标签:]repeat
循环体;
until 条件表达式
end repeat [标签];
Nach dem Login kopieren
-- -------存储过程-循环控制-repeat
use mysql7_procedure;
truncate table user;
delimiter $$
create procedure proc18_repeat(in insertCount int)
begin
declare i int default 1;
label:repeat
insert into user(uid, username, password) values(i,concat(&#39;user-&#39;,i),&#39;123456&#39;);
set i = i + 1;
until i > insertCount
end repeat label;
select &#39;循环结束&#39;;
end $$
delimiter ;
call proc18_repeat(100);
Nach dem Login kopieren

Dies wird mit einer Schleife verglichen, die auf jeden Fall einmal ausgeführt und dann beurteilt wird intern. Wenn es erfüllt ist, wird es direkt herausspringen Wir brauchen es, aber in Geschäftsanwendungsszenarien ist es immer noch relativ häufig.

Empfohlenes Lernen:

MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonMySQL-Prozesssteuerung während, wiederholen, Schleifenschleife. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:jb51.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage