Oracle PL/SQL 之 函式

starive發表於2014-02-08

Create  [or  replace ]  function 函式名

[(引數[{in | out | in  out}]  資料型別 ,...... )]

Return  返回型別

[authid {current_user | designer}]

{is | as}

Begin

函式體

End  函式名;

 

Or  replace:如果要建立的函式存在,則先刪除此函式,再重建此函式,也就是將撤銷和重建這兩個步驟合為一步操作。

In | out | in out:引數的模式。

authid curren_user :在呼叫時, oracle 使用呼叫該過程的使用者許可權域執行該過程,此時呼叫者必須有許可權訪問儲存過程中所涉及到的所有資料庫物件的許可權。

authid designer :為預設選線, oracle 將使用過程所有者的許可權來執行.

  1. create function leap_or_common_year
  2. (year in integer)
  3. return varchar2 is
  4. retval varchar2(30);
  5. begin
  6. if (year mod 400)-0 or ((year mod 100)!=0 and (year mod 4)= 0) then
  7. retval:=year ||' is a leap year;';
  8. else
  9. retval:=year ||'is a common year;';
  10. end if
  11. return retval;
  12. end leap_or_common_year;


  1. SQL> set serveroutput on;
  2. SQL> declare
  3.   2 output varchar2(30);
  4.   3 begin
  5.   4 output:=leap_or_common_year(2010);
  6.   5 dbms_output.put_line(output);
  7.   6 end;
  8.   7 /
  9. 2010is a common year;

  10. PL/SQL 過程已成功完成。


  1. SQL> select leap_or_common_year(2012) from dual;

  2. LEAP_OR_COMMON_YEAR(2012)
  3. -------------------------------------------------------------

  4. 2012 is a leap year;





來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26435490/viewspace-1077860/,如需轉載,請註明出處,否則將追究法律責任。

相關文章