1

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
幸福至上.png


飞鸟与游鱼
11 声望2 粉丝

飞鸟与游鱼 遥望难相遇