Oracle存儲過程簡單示例
存儲過程:
存儲過程(Stored Procedure)是在大型數據庫系統中,一組為了完成特定功能的SQL 語句集,存儲在數據庫中,經過第一次編譯後再次調用不需要再次編譯,用戶通過指定存儲過程的名字並給出參數(如果該存儲過程帶有參數)來執行它。存儲過程保存在數據庫裏面,存儲過程可以被連接此數據庫的所有程序設計語言和程序使用,存儲過程可以有數據庫管理軟件(如PLSQL)修改,使得多層結構程序調整系統邏輯時,並不需要編譯和分發程序,並且存儲過程執行中,不會引起網絡流量,不占用程序服務器的內存和CPU資源。
簡單示例:
環境:PL/SQL Oracle
建表:
create Table user(id varchar(8),name varchar(28),pwd varchar(38),address varchar(120))
創建存儲過程:
//or replace:數據庫中若存在同名的存儲過程,直接覆蓋,如果不使用or replace 同名會報錯 //test:存儲過程名稱 create or replace procedure test( id user.id%type, //保證該參數與數據庫中的字段類型同步 name user.name%type, pwd user.pwd%type, address user.address%type )as begin insert into user(id,name,pwd,address) values(id,name,pwd,address); end;
調用存儲過程:
PL/SQL中調用:
begin test('5','張三','255','江西南昌'); end;
sql.xml文件中調用:
//parameterType:傳入的參數類型 resultType:返回的結果類型 //statementType:標識調用存儲過程 <select id="" parameterType="" resultType="" statementType="CALLABLE"> { call test('5','張三','255','江西南昌') }
Tags:
文章來源: