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