1.基本結構
create or replace procedure 儲存過程名字
(引數1 in number,
引數2 in number
) is
變數1 integer :=0;
變數2 date;
begin
end 儲存過程名字
2.select into statement
將select查詢的結果存入到變數中,可以同時將多個列儲存多個變數中,必須有一條
記錄,否則丟擲異常(如果沒有記錄丟擲no_data_found)
例子:
begin
select col1,col2 into 變數1,變數2 from typestruct where ***;
exception
when no_data_found then
***x;
end;
...3.if 判斷
if v_test=1 then
begin
do something
end;
end if;
4.while 迴圈
while v_test=1 loop
begin
***x
end;
end loop;
5.變數賦值
v_test := 123;
6.用for in 使用cursor
...is
cursor cur is select * from ***;
begin
for cur_result in cur loop
begin
v_sum :=cur_result.列名1+cur_result.列名2
end;
end loop;
end;
7.帶引數的cursor
cursor c_user(c_id number) is select name from user where typeid=c_id;
open c_user(變數值);
loop
fetch c_user into v_name;
exit fetch c_user%notfound;
do something
end loop;
close c_user;
8.用pl/sql developer debug
連線資料庫後建立乙個test window
在視窗輸入呼叫sp的**,f9開始debug,ctrl+n單步除錯
oracle 儲存過程的一些基本語法
1.基本結構 create or replace procedure 儲存過程名字 引數1 in number,引數2 in number is 變數1 integer 0 變數2 date begin end 儲存過程名字 2.select into statement 將select查詢的結果存...
oracle函式 儲存過程一些簡單例子
區別 1.返回值的區別,函式有1個返回值,而儲存過程是通過引數返回的,可以有多個或者沒有 2.呼叫的區別,函式可以在查詢語句中直接呼叫,而儲存過程必須單獨呼叫.函式一般情況下是用來計算並返回乙個計算結果而儲存過程一般是用來完成特定的資料操作 比如修改 插入資料庫表或執行某些ddl語句等等 例子 游標...
專案中的一些儲存過程
物件名稱 pr user getpersonalcomplete 功能描述 獲取個人使用者資訊完成百分比 引數說明 呼叫示例 execute pr user getpersonalcomplete 1,1 作 者 xu yu 修改人 create procedure pr user getperso...