Oracle PL/SQL编程存储过程与函数(二)

2014-11-24 18:07:55 · 作者: · 浏览: 1
可以使用DEFAULT关键字为输入参数指定默认值。



例5:


CREATE OR REPLACE FUNCTION demo_fun(
Name VARCHAR2,
Age INTEGER,
Sex VARCHAR2 DEFAULT '男')
RETURN VARCHAR2
AS
V_var VARCHAR2(32);
BEGIN
V_var := name||':'||TO_CHAR(age)||'岁.'||sex;
RETURN v_var;
END;


具有默认值的函数创建后,在函数调用时,如果没有为具有默认值的参数提供实际参数值,函数将使用该参数的默认值。但当调用者为默认参数提供实际参数时,函数将使用实际参数值。在创建函数时,只能为输入参数设置默认值,而不能为输入/输出参数设置默认值。


DECLARE


var VARCHAR(32);


BEGIN


Var := demo_fun('user1', 30);


DBMS_OUTPUT.PUT_LINE(var);


Var := demo_fun('user2', age => 40);


DBMS_OUTPUT.PUT_LINE(var);


Var := demo_fun('user3', sex => '女', age => 20);


DBMS_OUTPUT.PUT_LINE(var);


END;