PL/SQL编程—控制语句_Oracle

PL/SQL编程—控制语句_Oracle_02

 

SQL> create or replace procedure sp_pro5(id_in varchar2) is
2 v_sal mytest.salary%type;
3 begin
4 select salary into v_sal from mytest where id=id_in;
5 if v_sal<130 then
6 update mytest set salary=1.1*v_sal where id=id_in;
7 end if;
8 end;
9 /

Procedure created

SQL> exec sp_pro5(4);

PL/SQL procedure successfully completed

SQL> select * from mytest;

ID NAME PASSWD SALARY
----- -------------------- -------------------- --------------------------------------------------------------------------------
1 123 123 150
2 gaodingle!!!! 123 150
3 gagaga 123 150
4 125555 passwd 55

PL/SQL编程—控制语句_sql_03

SQL> create or replace procedure sp_pro6(id_in varchar2) is
2 v_bonus number(6,2);
3 begin
4 select bonus into v_bonus from mytest where id=id_in;
5 if v_bonus=0 then
6 update mytest set bonus=100 where id=id_in;
7 else
8 update mytest set bonus=v_bonus+300 where id=id_in;
9 end if;
10 end;
11 /

Procedure created

SQL> select * from mytest;

ID NAME PASSWD SALARY BONUS
----- -------------------- -------------------- -------- --------
1 123 123 120.00 0.00
2 gaodingle!!!! 123 120.00 0.00
3 gagaga 123 120.00 100.00
4 125555 passwd 120.00 100.00

SQL> exec sp_pro6(1);

PL/SQL procedure successfully completed

SQL> select * from mytest;

ID NAME PASSWD SALARY BONUS
----- -------------------- -------------------- -------- --------
1 123 123 120.00 100.00
2 gaodingle!!!! 123 120.00 0.00
3 gagaga 123 120.00 100.00
4 125555 passwd 120.00 100.00

PL/SQL编程—控制语句_微信公众号_04

PL/SQL编程—控制语句_微信公众号_05

PL/SQL编程—控制语句_流程控制_06

PL/SQL编程—控制语句_sql_07

SQL> create or replace procedure sp_pro7 is
2 i number:=0;
3 begin
4 loop
5 insert into users values(i,'test'||i);
6 exit when i=3;
7 i:=i+1;
8 end loop;
9 end;
10 /

Procedure

PL/SQL编程—控制语句_Oracle_08

PL/SQL编程—控制语句_微信公众号_09

PL/SQL编程—控制语句_sql_10

 

 


PL/SQL编程—控制语句_sql_11

作者:翎野君

如果您喜欢或希望看到更多我的文章,关注我的微信公众号《翎野君》。

转载文章请务必保留出处和署名,否则保留追究法律责任的权利。