Oracle_存储过程、函数、触发器、包

本文详细介绍了Oracle数据库中的存储过程、函数的语法和使用示例,包括带参数和默认值参数的处理。此外,还讨论了触发器的概念,以及如何创建和使用包来组织相关代码。
摘要由CSDN通过智能技术生成

存储过程

  • 语法:
CREATE [OR REPLACE] PROCEDURE 存储过程名[(参数[IN|OUT|IN OUT] 数据类型...)]
{
  AS|IS}
[说明部分]
BEGIN
可执行部分
[EXCEPTION 错误处理部分]
END [过程名];
  1. 简单例子
create or replace procedure pro_hello
is
begin
  dbms_output.put_line('hello world!!');
end;

-- 调用
call pro_hello();
  1. 带参数
-- 2. 带参数的过程
/*
   存储过程的参数 输入输出类型
           in 默认类型 输入类型的参数 ,在过程中是不能进行修改的 
           out 输出类型的参数,过程中可以修改, 在过程调用后,可以获取到变化后的值的
           in out 即是输入又是输出
*/
create or replace procedure getEmp(p_empno number, p_emp out emp%rowtype, p_type in out varchar2)
is
begin
  select * into p_emp from emp where empno = p_empno;
  p_type := p_type || ':查询成功';
exception
  when others then
    p_type := p_type || ':查询失败';
end;

-- 注意: 包含输出参数的存储过程必须在plsql块中调用 不能使用call调用
declare
   v_emp emp%rowtype;
   v_type varchar2(128) default '执行结果';
begin
  getEmp(7369,v_emp,v_type); -- 调用存储过程
  dbms_output.put_line(v_type);
  dbms_output.put_line(v_emp.ename);
end;
  1. 默认值参数
create 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值