Oracle存儲(chǔ)過(guò)程的基本寫法如下:
CREATE OR REPLACE PROCEDURE procedure_name (parameter1 datatype, parameter2 datatype, ...)
IS
-- 可選的局部變量聲明
BEGIN
-- 邏輯代碼
END;
/
存儲(chǔ)過(guò)程參數(shù)可以有輸入?yún)?shù)、輸出參數(shù)和輸入輸出參數(shù),參數(shù)聲明放在存儲(chǔ)過(guò)程名稱之后的括號(hào)內(nèi)。
存儲(chǔ)過(guò)程的邏輯代碼可以包括條件語(yǔ)句、循環(huán)語(yǔ)句、異常處理等。
存儲(chǔ)過(guò)程的名稱需要在創(chuàng)建時(shí)指定,并使用CREATE OR REPLACE PROCEDURE語(yǔ)句創(chuàng)建。
存儲(chǔ)過(guò)程可以使用BEGIN和END關(guān)鍵字定義開(kāi)始和結(jié)束。
存儲(chǔ)過(guò)程可以使用DECLARE關(guān)鍵字定義局部變量。
存儲(chǔ)過(guò)程可以使用SQL語(yǔ)句和PL/SQL語(yǔ)句。
例如,下面是一個(gè)簡(jiǎn)單的存儲(chǔ)過(guò)程的示例:
CREATE OR REPLACE PROCEDURE calculate_sum (num1 NUMBER, num2 NUMBER, sum OUT NUMBER)
IS
BEGIN
sum := num1 + num2;
DBMS_OUTPUT.PUT_LINE('The sum of ' || num1 || ' and ' || num2 || ' is ' || sum);
END;
/
這個(gè)存儲(chǔ)過(guò)程接受兩個(gè)輸入?yún)?shù)num1和num2,并計(jì)算它們的和,將結(jié)果存入sum輸出參數(shù)。最后使用DBMS_OUTPUT.PUT_LINE語(yǔ)句輸出結(jié)果到控制臺(tái)。