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 丁克設計 閱讀(833) 評論(0)  編輯  收藏 所屬分類: Oracle 技術文檔


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


          網站導航:
           
          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導航

          留言簿(6)

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 吉木萨尔县| 永登县| 庆元县| 司法| 宣城市| 鲁甸县| 张家界市| 道孚县| 清远市| 呼玛县| 土默特右旗| 盖州市| 莫力| 全椒县| 凤城市| 江油市| 抚宁县| 连平县| 唐海县| 黄石市| 会宁县| 阜南县| 岑溪市| 错那县| 东辽县| 宝丰县| 那坡县| 察隅县| 泾川县| 武威市| 治多县| 石阡县| 曲水县| 赤水市| 封开县| 鹰潭市| 铜山县| 页游| 通渭县| 沅陵县| 芜湖县|