Oracle自定義函數

          1. --沒有參數的函數   
          2. create or replace function get_user return varchar2 is  
          3.   v_user varchar2(50);   
          4. begin  
          5.   select username into v_user from user_users;   
          6.   return v_user;   
          7. end get_user;   
          8.   
          9. --測試   
          10. 方法一   
          11. select get_user from dual;   
          12.   
          13. 方法二   
          14. SQL> var v_name varchar2(50)   
          15. SQL> exec :v_name:=get_user;   
          16.   
          17. PL/SQL 過程已成功完成。   
          18.   
          19. SQL> print v_name   
          20.   
          21. V_NAME   
          22. ------------------------------   
          23. TEST   
          24.   
          25. 方法三   
          26. SQL> exec dbms_output.put_line('當前數據庫用戶是:'||get_user);   
          27. 當前數據庫用戶是:TEST   
          28.   
          29. PL/SQL 過程已成功完成。  
          Sql代碼 復制代碼
          1. --帶有IN參數的函數   
          2. create or replace function get_empname(v_id in number) return varchar2 as  
          3.   v_name varchar2(50);   
          4. begin  
          5.   select name into v_name from employee where id = v_id;   
          6.    return v_name;   
          7. exception   
          8.   when no_data_found then  
          9.     raise_application_error(-20001, '你輸入的ID無效!');   
          10. end get_empname;  

           

          附:

          函數調用限制
          1、SQL語句中只能調用存儲函數(服務器端),而不能調用客戶端的函數
          2、SQL只能調用帶有輸入參數,不能帶有輸出,輸入輸出函數
          3、SQL不能使用PL/SQL的特有數據類型(boolean,table,record等)
          4、SQL語句中調用的函數不能包含INSERT,UPDATE和DELETE語句

           

          查看函數院源代碼
          oracle會將函數名及其源代碼信息存放到數據字典中user_source
          select text from user_source where name='GET_EMPNAME';


          刪除函數
          drop function get_empname

          posted on 2009-02-26 16:57 丁克設計 閱讀(841) 評論(0)  編輯  收藏 所屬分類: Oracle 技術文檔


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          留言簿(6)

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 喀喇| 铅山县| 交城县| 阿拉善盟| 邯郸县| 郁南县| 吕梁市| 香格里拉县| 唐河县| 南开区| 静乐县| 曲阜市| 金沙县| 辛集市| 怀安县| 威海市| 兴山县| 颍上县| 卢龙县| 榆中县| 金川县| 民权县| 乌拉特中旗| 闽清县| 开化县| 改则县| 大冶市| 天祝| 会宁县| 岱山县| 温宿县| 壤塘县| 翁牛特旗| 黄石市| 通海县| 广德县| 长葛市| 巫山县| 扎囊县| 毕节市| 资中县|