城市獵人

          在一網情深的日子里,誰能說得清是苦是甜,只知道確定了就義無反顧
          posts - 1, comments - 7, trackbacks - 0, articles - 89

          PL/SQ之函數

          Posted on 2008-10-27 11:12 sailor 閱讀(368) 評論(0)  編輯  收藏 所屬分類: oracle

          一、定義
                 函數用于返回特定的數據。如果在應用程序中經常需要通過執行SQL語句來返回特定的數據,那么可以基于這些操作建立特定的函數。

          二、語法

          語法

                 注意:當建立函數時,函數頭部一定要有返回類型,函數執行體一定要有return語句。

          三、例子
          1、簡歷函數,不帶任何參數
          no arg


          2、建立函數,帶有IN參數

          arg

          調用


          3、建立函數,帶有參數out
          帶有參數out

          4、建立函數,同時帶有參數in、out
           1SQL> create or replace function show_dept_withinout(v_no in out number, v_name in OUT varchar2)
           2  2  return VARCHAR2 is
           3  3  v_desc VARCHAR2(30);
           4  4  begin
           5  5    select dname, description INto v_name, v_desc from dept where depno = v_no;
           6  6    return v_desc;
           7  7  end;
           8  8  /
           9 
          10Function created
          11 
          12SQL> var num number
          13SQL> var name varchar2
          14SQL> var desc varchar2
          15SQL> exec :num := 9
          16 
          17PL/SQL procedure successfully completed
          18num
          19---------
          209
          21 
          22SQL> exec :name := 'IT部門'
          23 
          24PL/SQL procedure successfully completed
          25name
          26---------
          27IT部門
          28 
          29SQL> exec :desc := show_dept_withinout(:num, :name);
          30 
          31PL/SQL procedure successfully completed
          32desc
          33---------
          34 
          35num
          36---------
          379
          38name
          39---------
          40IT部門

          四、查看函數
          1SQL>select text from user_source where name = 'FUNCTION_NAME'
          主站蜘蛛池模板: 常熟市| 禹州市| 谢通门县| 恩平市| 烟台市| 沙坪坝区| 峡江县| 扶绥县| 石柱| 买车| 台东县| 邹城市| 阳江市| 治县。| 大邑县| 文登市| 双辽市| 张家口市| 丰原市| 金昌市| 蕉岭县| 交城县| 陆河县| 托克托县| 德令哈市| 土默特左旗| 黔江区| 铁岭市| 贺州市| 平顺县| 桂阳县| 华蓥市| 马公市| 定州市| 邳州市| 泰顺县| 柳河县| 彭泽县| 额尔古纳市| 新建县| 东乌珠穆沁旗|