oracle儲存過程學習(二)

2021-06-10 00:39:20 字數 2014 閱讀 4799

建立乙個最簡單的儲存過程

create or replace procedure test_xg_p1 is

begin

dbms_output.put_line('hello world! this is the first procedure');

end;

建立乙個帶輸入輸出引數的儲存過程:把輸入的資料傳給輸出引數

create or replace procedure test_xg_p2(a in number,x out number) is

begin

x:=a;

end test_xg_p2;

建立乙個邏輯判斷的儲存過程,幷包含輸入輸出引數:近似分數的登記判斷

create or replace procedure test_xg_p3(a in number,x out varchar2) is

begin

if a>=90 then

begin

x := 'a';

end;

end if;

if a<90 then

begin

x:='b';

end;

end if;

if a<80 then

begin

x:='c';

end;

end if;

if a<70 then

begin

x:='d';

end;

end if;

if a<60 then

begin

x:='e';

end;

end if;

end test_xg_p3;

建立乙個帶迴圈邏輯的儲存過程:近似累加函式

create or replace procedure test_xg_p4(a in number,x out varchar2) is

tempresult number(16);

begin

tempresult :=0;

for tempa in 0..a loop

begin

tempresult := tempresult + tempa;

end;

end loop;

x:=tempresult;

end test_xg_p4;

建立乙個能從資料庫中特定表中返回資料的儲存過程:

create or replace procedure test_xg_p5(x out varchar2) is

tempresult varchar2(1024);

begin

tempresult := 'start->';

select hotelid||hotelname into tempresult from hotel where hotelid =10041764;

x:=tempresult;

end test_xg_p5;

建立乙個能使用游標的帶迴圈的儲存過程

: create or replace procedure test_xg_p6(x out varchar2) is

tempresult varchar2(10240);

cursor cursor1 is select * from hotel where hotelname like '浙江%';

begin

tempresult := 'start->';

for cursor_result in cursor1 loop

begin

tempresult :=tempresult||cursor_result.hotelid||cursor_result.hotelname;

end;

end loop;

x:=tempresult;

end test_xg_p6;

oracle學習之路(二 儲存過程)

1 create or replace procedure 儲存過程名 2 is 3 begin 4 null 5 end 行1 create or replace procedure 是乙個sql語句通知oracle資料庫去建立乙個叫做skeleton儲存過程,如果存在就覆蓋它 行2 行3 行4 ...

Oracle儲存過程學習

儲存過程是一組為了完成特定功能的 sql 語句塊,經編譯後儲存在資料庫中,使用者通過指定儲存過程的名字並給出引數 如果該儲存過程帶有引數 來執行它。1 儲存過程和函式以命名的資料庫物件形式儲存於資料庫當中。儲存在資料庫中的優點是很明顯的,因為 不儲存在本地,使用者可以在任何客戶機上登入到資料庫,並呼...

Oracle儲存過程學習

儲存過程建立語法 create or replace procedure 儲存過程名 param1 in type,param2 out type as 變數1 型別 值範圍 變數2 型別 值範圍 begin select count into 變數1 from 表a where列名 param1 ...