oracle存储过程隐式函数,Oracle存储过程,函数。
--在應(yīng)用程序中往往有些固定的數(shù)據(jù)庫操作,我們常常為致謝固定的操作定義了一些存儲(chǔ)過程。這些存儲(chǔ)過程不僅
--可以簡化客戶端的應(yīng)用程序的開發(fā)和維護(hù)。而且還可以提高應(yīng)用的運(yùn)行性能。
-- 創(chuàng)建存儲(chǔ)過程的語法。
create [or replace] procedure [(參數(shù))]
is|as
[局部變量聲明]
begin
可執(zhí)行語句
exception
異常處理
end
--在定義中 IS|AS 可以根據(jù)習(xí)慣選擇IS 或者AS 除了定義部分。其余的語法同PL/SQL的語法。
例: 。
-- 1 ①一個(gè)無參的存儲(chǔ)過程。
create or replace procedure proc_1--proc_1存儲(chǔ)過程名稱
is
i number(3);--定義變量
begin
i:=100;
dbms_output.put_line(i);
end;
--②調(diào)用存儲(chǔ)過程。
begin
proc_1;
end;
--一個(gè)無參數(shù)的存儲(chǔ)過程創(chuàng)建完畢
2 一個(gè)有參數(shù)的存儲(chǔ)過程
存儲(chǔ)過程定義的時(shí)候可以使用參數(shù)也可以不實(shí)用參數(shù)。
參數(shù)類型
· 在PL/SQL過程中,可以有3種類型的參數(shù)。
· IN參數(shù):讀入?yún)?shù),主程序向過程中傳遞參數(shù)。
· OUT參數(shù):輸出參數(shù),過程向主程序傳遞參數(shù)。
· IN OUT參數(shù):這個(gè)參數(shù),過程與主程序雙向交流數(shù)據(jù)。
如果存儲(chǔ)過程有OUT 或者IN OUT 類型的參數(shù),那么存儲(chǔ)過程就只能在PL/SQL
中被調(diào)用。不能使用EXECUTE 或者CALL調(diào)用。
一個(gè)輸入?yún)?shù)的例子
create or replace procedure proc_2(myno in number)
is emprow emp%rowtype;--定義一個(gè)行類型的變量
begin
select * into emprow from emp where empno=myno;
dbms_output.put_line('員工姓名:'||emprow.ename||'員工薪水'||emprow.sal);
end;
--調(diào)用這個(gè)存儲(chǔ)過程
begin
proc_2(7369);
end;
既有輸入?yún)?shù) 又有輸出參數(shù)
create or replace procedure proc_3(myno in number,mysal out emp.sal%type, myname out emp.ename%type)
is
emprow emp%rowtype;
begin
select sal,ename into mysal,myname from emp where empno=myno;
end;
--調(diào)用這個(gè)存儲(chǔ)過程
declare
tempsal emp.sal%type;
empname emp.ename%type;
begin
proc_3(7369,tempsal,empname);
dbms_output.put_line('員工姓名'||empname||'員工薪水'||tempsal);
end;
總結(jié)
以上是生活随笔為你收集整理的oracle存储过程隐式函数,Oracle存储过程,函数。的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 尾盘开板意味着什么
- 下一篇: 计算机C语言常用语句,计算机二级C语言考