oracle循环怎么写,oracle循环造数据

请教大神,oracle数据库循环语句怎么写

你想要的这几个结果,都可以直接使用SQL语句查出,无需循环。

成都创新互联从2013年创立,先为满洲等服务建站,满洲等地企业,进行企业商务咨询服务。为满洲企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

Oracle循环实在PLSQL块中编写:关键字for XXX loop 循环体 end loop;

Oracle存储过程游标for循环怎么写

首先编写存储过程的整体结构,如下:

create or replace procedure test_proc is

v_date date; --变量定义

begin

select sysdate into v_date from dual;

end test_proc;

2

定义游标:

create or replace procedure test_proc is

v_date date; --定义变量

cursor cur is select * from ldcode; --定义游标

begin

select sysdate into v_date from dual;

end test_proc;

3

编写for循环:

create or replace procedure test_proc is

v_date date; --定义变量

cursor cur is select * from ldcode where rownum10; --定义游标

begin

select sysdate into v_date from dual;

--游标for循环开始

for temp in cur loop --temp为临时变量名,自己任意起

Dbms_Output.put_line(temp.Code); --输出某个字段,使用"变量名.列名"即可。

end loop;

--游标for循环结束

end test_proc;

4

测试运行,点击【DBMS Output】标签页查看结果如下图:

END

二、带参数的游标for循环

1

定义带参数的游标:

cursor cur(v_codetype ldcode.Codetype%TYPE) is

select * from ldcode where codetype = v_codetype; --定义游标

定义游标格式:

cursor 游标名称(变量定义) is 查询语句;

注意:

where条件中的变量名v_codetype要与游标定义cur(v_codetype ldcode.Codetype%TYPE)中的一致。

2

编写for循环部分:

--游标for循环开始

for temp in cur('llmedfeetype') loop

--temp为临时变量名,自己任意起

--cur('llmedfeetype')为"游标名称(传入的变量)"

Dbms_Output.put_line(temp.Code); --输出某个字段,使用"变量名.列名"即可。

end loop;

--游标for循环结束

3

测试运行,点击【DBMS Output】标签页查看结果如下图:

Oracle循环的几种写法(GOTO 、FOR 、 WHILE 、LOOP)

一、GOTO循环用法

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;

/*以上语句翻译如下:

declare 定义变量;

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循环怎么写,oracle循环造数据
文章源于:http://azwzsj.com/article/dsgsgdp.html