日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Oracle存儲過程

 印度阿三17 2019-10-07

1、作用

    a、在開發(fā)中,為了一個特定的業(yè)務功能,會向數(shù)據(jù)庫進行多次連接關閉(連接和關閉是很耗資源),需要對數(shù)據(jù)庫進行多次I/O讀寫,性能比較低。如果把這些業(yè)務放入

  存儲過程中,就可以做到連接關閉一次數(shù)據(jù)庫就可以實現(xiàn)業(yè)務,可以大大的提高效率。

    b、Oracle官方建議,能夠讓數(shù)據(jù)庫操作的不要放在程序中,在數(shù)據(jù)庫中實現(xiàn)基本上不會出現(xiàn)錯誤,在程序中操作可能會存在錯誤。(如果在數(shù)據(jù)庫中操作,可以有一定

  的日志恢復功能。)

2、語法

  CREATE OR REPLACE PROCEDURE 存儲過程名稱[(參數(shù)列表)] IS

  BEGIN

  END 存儲過程名稱;

?

  根據(jù)參數(shù)的類型,可以分為3類

  a、不帶參數(shù)

  b、帶輸入?yún)?shù)

  c、帶輸入輸出參數(shù)(返回值)

3、無參存儲

create or replace procedure p_hello as
--聲明變量
begin
    dbms_output.put_line('Hello World!');
end p_hello ;
View Code

?

調用 在plsql中可以直接在begin end中直接寫存儲過程名,或者在命令窗口中執(zhí)行 exec 存儲過程名;。

  注意:

    a、is和as是可以相互用的

    b、過程中沒有declare關鍵字,declare用在語句塊中

4、帶輸入?yún)?shù)存儲

create or replace procedure p_queryName(i_empno in emp.empno%type) as
--聲明變量
v_name emp.ename%type;
v_sal emp.sal%type;
begin
    --查詢emp表中對應員工的信息
    select ename,sal into v_name,v_sal from emp where empno=i_empno;
    dbms_output.put_line('名稱:'||v_name||'薪水:'||v_sal);
end p_queryName;
View Code

5、帶輸入輸出參數(shù)存儲

create or replace procedure p_querySalOut(i_empno in emp.empno%type,o_sal out emp.sal%type) as
--聲明變量
begin
    --查詢emp表中對應員工的信息
    select sal into o_sal from emp where empno=i_empno;
    dbms_output.put_line('名稱:'||v_name||'薪水:'||v_sal);
end p_querySalOut;
View Code

?調用

declare
--聲明變量接受存儲過程中的輸出參數(shù)
    v_sal emp.sal%type;
begin
    p_querySalOut(7839,v_sal);
    dbms_output.put_line(v_sal);
end;
View Code

?

  

來源:https://www./content-2-491751.html

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多