Oracle存儲過程入門學(xué)習(xí)基本語法
1.基本結(jié)構(gòu)
create OR REPLACE PROCEDURE存儲過程名字
(
參數(shù)1 IN NUMBER,
參數(shù)2 IN NUMBER
) IS
變量1 INTEGER :=0;
變量2 DATE;
BEGIN
END 存儲過程名字
2.select INTO STATEMENT
將select查詢的結(jié)果存入到變量中,可以同時將多個列存儲多個變量中,必須有一條記錄,否則拋出異常(如果沒有記錄拋出NO_DATA_FOUND)
例子:
BEGIN
select col1,col2 into 變量1,變量2 FROM typestruct where xxx;
EXCEPTION
WHEN NO_DATA_FOUND THEN
xxxx;
END;
...
3.IF 判斷
IF V_TEST=1 THEN
BEGIN
do something
END;
END IF;
4.while 循環(huán)
WHILE V_TEST=1 LOOP
BEGIN
XXXX
END;
END LOOP;
5.變量賦值
V_TEST := 123;
6.用for in 使用cursor
...
IS
CURSOR cur IS select * FROM xxx;
BEGIN
FOR cur_result in cur LOOP
BEGIN
V_SUM :=cur_result.列名1+cur_result.列名2
END;
END LOOP;
END;
7.帶參數(shù)的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
連接數(shù)據(jù)庫后建立一個Test WINDOW
在窗口輸入調(diào)用SP的代碼,F9開始debug,CTRL+N單步調(diào)試
相關(guān)文章
Oracle 函數(shù)大全[字符串函數(shù),數(shù)學(xué)函數(shù),日期函數(shù)]
字符串函數(shù),數(shù)學(xué)函數(shù),日期函數(shù),邏輯運算函數(shù),其他函數(shù)2008-09-09Oracle下時間轉(zhuǎn)換在幾種語言中的實現(xiàn)
Oracle下時間轉(zhuǎn)換在幾種語言中的實現(xiàn)...2007-04-04Oracle存儲過程之?dāng)?shù)據(jù)庫中獲取數(shù)據(jù)實例
介紹Oracle數(shù)據(jù)庫中獲取數(shù)據(jù)的存儲過程示例 ,在表A取得的數(shù)據(jù)插入另一個表B中2008-09-09Oracle row_number() over()解析函數(shù)高效實現(xiàn)分頁
Oracle row_number() over()解析函數(shù)高效實現(xiàn)分頁,需要的朋友可以參考下。2011-11-11