oracle 存储过程
作为个人学习存储的一个记录,如果你是一个老手,只是忘记了部分关键词或者语法,那么本章节不适合你。如果你是第一次学习存储过程,那么下面的内容可以花几分钟看下。
NAME VARCHAR2(100); begin NAME := 'hello world'; dbms_output.put_line(NAME); end; 循环
for循环
FOR X IN 1 .. 10 LOOP-- select id into v_id from hrp_sys_user WHERE ROWNUM = 1 ; dbms_output.put_line(X); end loop ;
loop循环
a number :=1;begin loop a:=a+1; dbms_output.put_line(a); exit when a>10; --退出循环条件 end loop; end ;
while 循环
a number :=1;b number :=5; begin while a<b loop a:=a+1; dbms_output.put_line(a); end loop; end ; if else
if else
b number;begin b :=5; if b > 3 then dbms_output.put_line('100'); end if; b :=2; if b > 3 then dbms_output.put_line('gt'); else dbms_output.put_line('lt'); end if; end; 简单的操作
查询次数赋予临时值,通过into关键字赋值给某个变量
create procedure TEST_FANGYUAN_TEST(V_NAME VARCHAR2) asv_count number; begin select count(*) into v_count from HRP_EMPLOYEE_MOVE_RECORD; dbms_output.put_line(v_count); end;
遍历查询出来的对象
create procedure TEST_FANGYUAN_TEST(V_NAME VARCHAR2) asbegin for item in ( select * from HRP_EMPLOYEE_MOVE_RECORD) loop dbms_output.PUT_LINE(item.MOVE_TYPE_DM); dbms_output.PUT_LINE(item.MOVE_TIME); end loop; end;
简单插入10条数据
create procedure TEST_FANGYUAN_TEST(V_NAME VARCHAR2) asbegin for x in 1 .. 10 loop insert into TEST_FANGYUAN(ID, NAME) values (1,'ttt'); commit ; dbms_output.put_line(X); end loop; end;
遍历自己然后删除自己
create procedure TEST_FANGYUAN_TEST(V_NAME VARCHAR2) asbegin for item in (select * from TEST_FANGYUAN) loop delete TEST_FANGYUAN where ID=item.id; commit ; end loop; end;//TODO |
oracle 存储过程 hello world
最新推荐文章于 2022-08-23 23:45:00 发布