------------------------基本function---------------------
create or replace function F_return_type (p_no in number)
return number is
row_result varchar2(100) := 10;
begin
row_result := p_no + row_result;
return row_result;
EXCEPTION
WHEN OTHERS
THEN
RETURN 'E';
end F_return_type;
-----------if/else-------调用function---------------------
CREATE OR REPLACE FUNCTION F_conn (P_TRANS_TYPE IN VARCHAR2)
RETURN VARCHAR2
AS
V_COUNT NUMBER;
V_TASK_ID VARCHAR2 (30);
V_select_result varchar2(50);
BEGIN
IF P_TRANS_TYPE = '2'
THEN
SELECT COUNT (*)
INTO V_COUNT
FROM stuinfo
WHERE stuid = 10;
IF V_COUNT = 0
THEN
V_TASK_ID := '你好';
ELSE
V_TASK_ID := '你好吗';
END IF;
else
V_TASK_ID := 'SB';
END IF;
V_select_result := f_cursor_select(p_no => 10);
RETURN V_TASK_ID || V_select_result;
END;
---------------------------抛异常-------------------------
create or replace function f_exception (parameter varchar2)
RETURN varchar2 IS
val number;
v_exception exception;
BEGIN
if parameter is null then
raise v_exception;
else
val := to_number(parameter);
RETURN to_char(val) || '你好!!正常';
end if;
EXCEPTION
when v_exception then
RETURN '你好!!SB';
WHEN OTHERS THEN
RETURN '你好!!异常';
END;