国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

Oracle存儲過程和存儲函數(shù)創(chuàng)建方法(詳解)

2024-08-29 14:00:15
字體:
供稿:網(wǎng)友

select * from emp;

-----------------存儲過程------------------------

--定義

   create[or replace] procedure 存儲過程名稱(參數(shù)名 [in]/out 數(shù)據(jù)類型)
   is/as
   begin

--邏輯表達(dá)式 

end [存儲過程名稱];

--定義存儲過程計算年薪,并答應(yīng)輸出

  create or replace procedure proc_salyears(v_no in number)
   is
   sal_years number(9,2);
   begin

 --計算年薪

select sal*12+nvl(comm,0) into sal_years from emp where empno=v_no;

--輸出

dbms_output.put_line(sal_years);
   end;

--調(diào)用存儲過程

 方式1:

call proc_salyears(7788);

方式2:

begin
       proc_salyears(7369);
     end; 

--out參數(shù)的存儲過程

--計算年薪并返回  

  create or replace procedure proc_salyears(v_no in number,sal_years out number)
   is
   begin

 --計算年薪

select sal*12+nvl(comm,0) into sal_years from emp where empno=v_no;
   end;

--調(diào)用存儲過程

declare
   v_sal number(9,2);
  begin
     proc_salyears(7876,v_sal);
     dbms_output.put_line(v_sal);
  end;

-----------------存儲函數(shù)------------

--定義

create or replace function 存儲函數(shù)名(參數(shù)名 in/out 數(shù)據(jù)類型)
    return 數(shù)據(jù)類型
    is|as
    begin
        return 具體的數(shù)據(jù);
    end [存儲函數(shù)名稱];

--定義存儲函數(shù)名計算年薪

create or replace function fun_salyears(f_no number)
    return number
    is
  sal_years number(9,2);
    begin
    select sal*12+nvl(comm,0) into sal_years from emp where empno=f_no;
        return sal_years;
    end ;

--使用存儲函數(shù)

declare
  sal_yeats number(9,2);
  begin
    sal_yeats := fun_salyears(7876);
    dbms_output.put_line(sal_yeats);
  end;
 

--可簡寫

begin
    dbms_output.put_line(fun_salyears(7369));
  end;

--------存儲過程和存儲函數(shù)的區(qū)別--------

存儲過程多用于項目之間的數(shù)據(jù)共享,存儲函數(shù)多被存儲過程調(diào)用.

存儲函數(shù)可以再sql語句中調(diào)用,存儲過程不能.


注:相關(guān)教程知識閱讀請移步到oracle教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 宣城市| 瑞金市| 衡水市| 彰武县| 石景山区| 永修县| 固阳县| 永平县| 兴和县| 吉林市| 天长市| 大渡口区| 当雄县| 海城市| 无极县| 兴和县| 绥江县| 渝中区| 边坝县| 浦东新区| 新昌县| 景东| 临桂县| 崇明县| 清新县| 双江| 南宫市| 晋城| 乐亭县| 湘西| 建昌县| 福海县| 塘沽区| 三都| 晋城| 周至县| 巍山| 北京市| 郯城县| 巴青县| 工布江达县|