Oracle函數function


--function
/*
函數是有返回值。-只能有一個返回值。

語法
    Create or replace func1(參數)
        Return varchar2
   As
        Pl/sql塊
        Return ‘Jack’;

*/
--創建和調用

create or replace  function f1
return varchar2
as
--聲明變量
begin
return 'jack';
end;
select f1()from dual;
--在plsql使用
set serveroutput on;
declare
v_name varchar2(30);
begin
--直接調用值調用
v_name:=f1();
DBMS_OUTPUT.PUT_LINE('name is'||v_name);
end;
---接受參數的函數
create or replace function f2(p_w varchar2)
return varchar2
as
v_f char(1);
v_a varchar2(500);
begin
--判斷是否有數據
if p_w is null then
return null;
end if;
if length(p_w)=0 then
return null;
end if;
--取第一個字
v_f :=substr(p_w,1,1);
--去剩余
v_a:=substr(p_w,2);
v_a:=lower(v_a);--小寫
v_f:=upper(v_f);
--
v_a:=v_f||v_a;
return v_a;
end;

--測試
select f2('abdsds') from dual;
--Abdsds

------------------------------
-------題外話教你一招DBA
--超級管理員下執行干掉其它連接用戶
select sid,serial#,username,machine from v$session where username is not null;
--35    45    HR    lx-THINK
alter system kill session '35,45';--可以干掉HR的連接


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM