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 xxx; EXCEPTION WHEN NO_DATA_FOUND THEN xxxx; END; ... 3.IF 判斷 IF V_TEST=1 THEN BEGIN do something END; END IF; 4.while 迴圈 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.帶參數的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單步調試 本篇文章來源於 PHP資訊 原文連結:http://www.phpq.net/oracle/oracle-stored-procedure-syntax.html