我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈
入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈
虚 拟 环 境 搭 建 :👉👉 Python项目虚拟环境(超详细讲解) 👈👈
PyQt5 系 列 教 程:👉👉 Python GUI(PyQt5)文章合集 👈👈
Oracle数据库教程:👉👉 Oracle数据库文章合集 👈👈
优 质 资 源 下 载 :👉👉 资源下载合集 👈👈
优 质 教 程 推 荐:👉👉 Python爬虫从入门到入狱系列 合集👈👈
PL-SQL编程—函数
- 函数
- 块&过程&函数
函数
- 函数用于返回特定的数据,当建立函数时,在函数头部必须包含return子句,而在函数体内必须包含return语句返回的数据。我们可以用create function来建立函数
- 语法
create function 函数名(参数 参数类型) return number is 返回值变量 返回值类型(7,2); begin 执行语句 return 返回值变量; end;
- 示例
- 定义函数
create function sp_fun1(spName varchar2) return number is yearSal number(7,2); begin select (sal+nvl(COMM,0))*12 into yearSal from emp where ename=spname; return yearSal; end;
- 函数调用
- 在PL/SQL中调用函数
var aa number /*定义变量 aa 类型为number*/ call sp_fun1('SCOTT') into:aa /*调用sp_fun1函数,将返回值存入aa变量*/
- 在程序中调用函数
- 在PL/SQL中调用函数
- 实例
- 查询指定用户的年薪
-- 定义函数部分 create function sp_fun1(spname varchar2) return number is yearsal number(7,2); begin select (sal+nvl(comm,0))*12 into yearsal from emp where ename=spname; return yearsal; end; -- PL/SQL调用函数部分 var aa number /*定义变量 aa 类型为number*/ call sp_fun1('SCOTT') into:aa /*调用sp_fun1函数,将返回值存入aa变量*/
块&过程&函数
- 演示代码
/*============================================================================*/ --块 declare v_name varchar2(30); v_sal number(7,2); begin select ename,sal into v_name,v_sal from emp where empno=&a; dbms_output.put_line('员工姓名:'||v_name||' 员工工资:'||v_sal); exception when no_data_found then dbms_output.put_line('没有数据'); end; /*============================================================================*/ -- 过程 create or replace procedure sp_pro1(spName varchar2,spPosw varchar2) is begin insert into mytest values(spName,spPosw); end; /*============================================================================*/ --函数 create or replace function sp_fun1(spName varchar2) return number is yearSal number(7,2); begin select (sal+nvl(COMM,0))*12 into yearSal from emp where ename=spname; return yearSal; end;