在Oracle中,存儲過程是一種預編譯的SQL代碼塊,它可以接收參數并返回值。以下是一個簡單的存儲過程示例,用于向名為employees
的表中插入新記錄。
首先,創建一個名為employees
的表:
CREATE TABLE employees (
id NUMBER PRIMARY KEY,
first_name VARCHAR2(50),
last_name VARCHAR2(50),
salary NUMBER
);
接下來,創建一個名為insert_employee
的存儲過程:
CREATE OR REPLACE PROCEDURE insert_employee (
p_id IN NUMBER,
p_first_name IN VARCHAR2,
p_last_name IN VARCHAR2,
p_salary IN NUMBER
) IS
BEGIN
INSERT INTO employees (id, first_name, last_name, salary)
VALUES (p_id, p_first_name, p_last_name, p_salary);
COMMIT;
END insert_employee;
在這個存儲過程中,我們定義了四個輸入參數:p_id
、p_first_name
、p_last_name
和p_salary
。存儲過程的主體部分使用BEGIN
和END
關鍵字包圍,并在其中執行INSERT
語句將新記錄插入到employees
表中。最后,我們使用COMMIT
語句提交事務。
要調用這個存儲過程并插入一條新記錄,可以使用以下命令:
BEGIN
insert_employee(1, 'John', 'Doe', 5000);
END;
這將調用insert_employee
存儲過程,并將參數p_id
設置為1,p_first_name
設置為’John’,p_last_name
設置為’Doe’,p_salary
設置為5000。存儲過程將執行插入操作,并提交事務。
這就是一個簡單的Oracle存儲過程示例。你可以根據需要創建更復雜的存儲過程,以滿足你的業務需求。