DECLARE
x number
BEGIN
x := 9
<<repeat_loop>>--循环点
x := x - 1
dbms_output.put_line(x)
IF x >0 THEN
GOTO repeat_loop --当x的值>0时,就goto到repeat_loop
END IF
END
/*以上语句翻译如下:
begin...end语句块
x 变量赋值
<<repeat_loop>>设置循环点
循环内容
x 变量递减
按行打印 x
IF...END IF语句块
IF...(条件) THEN :满足IF条件 则
GOTO语句 前往循环点
*/
二、FOR循环用法
DECLARE
x number
BEGIN
FOR i in 2..10 LOOP
dbms_output.put_line(i)
END LOOP
END
--最简单的循环?
/*
declare 定义变量
begin...end语句块
for...loop...end loop语句
*/
三、WHILE循环用法
DECLARE
x number
BEGIN
x :=5
WHILE x >1 LOOP
x := x - 1
dbms_output.put_line('循环内'||x)
END LOOP
dbms_output.put_line('循环外'||x)
END
/*
declare 定义变量
begin...end 语句块
while...loop...end loop语句
*/
四轿老、LOOP循环用法
DECLARE
x number
BEGIN
x :=0
LOOP
闭做升 x := x + 1
EXIT WHEN x >9--这里有个""号
dbms_output.put_line('内胡蠢'||x)
END LOOP
dbms_output.put_line('外'||x)
END
/*
declare 定义变量
begin...end
x 变量赋值
loop...end loop语句
exit when ...(条件)
*/
Oracle中有三种循环(For、While、Loop)山渗:
1、loop循环:御碰
create or replace procedure pro_test_loop isi number
begin
i:=0
loop
i:=i+1
dbms_output.put_line(i)
if i>5 then
exit
end if
end loop
end pro_test_loop
2、while循环:
create or replace procedure pro_test_loop isi number
begin
i:=0
while i<5 loop
i:=i+1
dbms_output.put_line(i)
end loop
end pro_test_loop
3、for循环1:
create or replace procedure pro_test_for isi number
begin
i:=0
for i in 1..5 loop
dbms_output.put_line(i)
end loop
end pro_test_for
4、for循环2:
create or replace 逗拆脊procedure pro_test_cursor isuserRow t_user%rowtype
cursor userRows is
select * from t_user
begin
for userRow in userRows loop
dbms_output.put_line(userRow.Id||','||userRow.Name||','||userRows%rowcount)
end loop
end pro_test_cursor
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)