Oracle 存儲過程基礎介紹

概述

前面已經對存儲過程、函數、包做了個介紹,但是畢竟是寫成了一篇,所以沒那麼細,今天單獨介紹一下存儲過程基礎方面,後面再說遍歷什麼遊標啊,數組啊~


1、語法

CREATE [OR REPLACE] PROCEDURE procedure_name
[ (parameter [,parameter]) ]
IS
[declaration_section]
BEGIN
executable_section
[EXCEPTION
exception_section]
END [procedure_name];

Oracle存儲過程包含三部分:過程聲明,執行過程部分,存儲過程異常。

這裡做個簡單瞭解就行,主要還是通過實例來理解。


2、環境準備

準備測試數據

create table students
(
ID int,
userName varchar(100),
userPass varchar(100),
userAge int
)
insert into students values(1,'jack','jjjaa',23);
insert into students values(2,'rose','jjjaa',21);
insert into students values(3,'lucy','jjjaa',22);
insert into students values(4,'Tony','jjjaa',24);
commit;
Oracle 存儲過程基礎介紹


對於某個用戶添加年齡

create or replace procedure SP_Update_Age
(
uName in varchar,
Age in int
)
as
begin
update students set UserAge = UserAge + Age where userName = uName;
commit;
end SP_Update_Age;

執行如下:exec SP_UPDATE_AGE('jack',1);

結果:

Oracle 存儲過程基礎介紹


IF判斷

Oracle 存儲過程基礎介紹

調用:

set serveroutput on; --沒這句話,看不到dmbs_output信息。
declare
num number;
begin
num:= -1;
test(num);
dbms_output.put_line( 'num = ' || num );
end;

輸出:

Oracle 存儲過程基礎介紹


For循環、

Oracle 存儲過程基礎介紹

輸出:

Oracle 存儲過程基礎介紹


While 循環

Oracle 存儲過程基礎介紹

調用:

Oracle 存儲過程基礎介紹

輸出:

Oracle 存儲過程基礎介紹


篇幅有限,關於存儲過程基礎部分就介紹到這了,大家有空可以測試一下,這裡有些不放代碼是因為大家如果真想練習的話最好是手敲好一點,加深印象。

後面會分享更多DBA方面內容,感興趣的朋友可以關注下!

Oracle 存儲過程基礎介紹


分享到:


相關文章: