一、自定义函数创建
语法格式:
create
[
or replace
]
function function_name/*函数名称*/
(/*参数定义部分*/
parameter_name1 model1 dataType1,
parameter_name2 model2 dataType2,
parameter_name3 model3 dataType3,
....
)
return return_datatype /*定义返回值类型*/IS/AS[local_declarations]/*声明临时变量*/BEGIN
function_body/*函数体部分*/return scalar_expression/*返回语句*/END function_name;
解析:
orreplace:是否覆盖,可选
function_name:函数名称
return 自居:指定函数的返回类型,不能指定大小
local_declarations:局部变量声明,可选
function_body:要执行的PL-SQL语句
参数模式有3种(如果没有注明,参数默认的类型为in)
in:为只读模式,在函数中,参数的值只能被引用,不能被改变
out:为只写模式,只能被赋值,不能被引用
in out:可读可写
示例1:
--根据机构编号查询机构名CREATEORREPLACEFUNCTION GET_ORG_NAME(P_ORG_ID INNUMBER) RETURNVARCHAR2IS
V_ORG_NAME VARCHAR2(4000);
BEGINSELECT ORG_NAME INTO V_ORG_NAME FROM SYS_ORG WHERE ORG_ID = P_ORG_ID;
RETURN(V_ORG_NAME);
END GET_ORG_NAME;
二、自定义函数调用
自定义函数的调用方法跟系统内置函数的调用方法相同,可以直接在select语句中调用,也可以在函数中调用,如下:
select GET_ORG_NAME(20) from SYS_ORG;
str :=GET_ORG_NAME(20);
三、自定义函数的删除
自定义函数的删除方法类似于表的删除,语法格式如下:
dropfunction[schema.]functionName;
原文:https://www.cnblogs.com/s-d-g/p/8446593.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!