PL/SQL创建函数:
当需要封装复杂的业务逻辑来减少SQL语句块代码冗余时使用PL/SQL自定义函数,自定义函数可以通过RETURN子句返回函数的执行结果。
PL/SQL创建函数语法:
CREATE [OR REPLACE] FUNCTION <函数名> [(<参数名> [IN | OUT | IN OUT] <数据类型> ,…)]
RETURN <返回值类型>
IS |AS
[<变量或常量声明>;]
BEGIN
<子程序块...>;
RETURN <需要返回的变量或常量名>;
[EXCEPTION
<异常处理...>;
RETURN <当出现异常时的返回值、变量或常量>;]
END [<函数名>];
- PL/SQL创建函数语法与PL/SQL创建存储过程语法类似,但也有区别,例如PL/SQL创建函数必须要有返回值。
- PL/SQL创建函数经过子程序块逻辑计算后,返回值唯一。
调用自定义函数:
Oracle自定义函数创建后会存储在Oracle服务器中,等待调用。自定义函数作为表达式被调用,可以嵌在任何需要表达式的地方,如:
- 在SQL语句块中对变量的赋值(通过变量接收函数的返回值):
变量名:=<函数名>(实参列表);
- 在查询语句中使用:
SELECT <函数名>(实参列表) FROM <对象名>;
- 使用EXECUTE(或EXEC)关键字调用函数(需要先声明变量来接收函数返回值):
EXECUTE(或EXEC) :<变量名>:=<函数名>(实参列表)
【注意此处可不写;分号作为结尾】- 使用CALL关键字调用函数(需要先声明变量来接收函数返回值):
CALL <函数名>(实参列表) INTO : <变量名>;
- 把函数作为其他子程序参数调用:
EXECUTE(或EXEC) DBMS_OUTPUT.PUT_LINE(<函数名>(实参列表));
删除自定义函数:
删除自定义函数语法:DROP FUNCTION <函数名>;
查看自定义函数:
函数创建完成后可通过developer或者通过数据字典两种方法查看自定义函数。
通过数据字典查看自定义函数方法:SELECT * FROM USER_SOURCE WHERE USER_SOURCE.NAME='<函数名>';
文章中若出现错误,请在评论中指出或联系我?
QQ:354008947
Email:354008947@qq.com
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。