/*不带任何参数存储过程*/
create or replace procedure out_date is
begin
dbms_output.put_line(sysdate);
end out_date;
--测试
SQL> set serveroutput on;
SQL> exec out_date;
/*带IN和out参数的存储过程*/
create or replace procedure get_name(v_id in number, v_name out varchar2) as
begin
select name into v_name from employee where id = v_id;
exception
when no_data_found then
raise_application_error(-20001, '你输入的ID不存在!');
end get_name;
--测试
SQL> var v_name varchar2(20);
SQL> exec get_name(4,:v_name);
PL/SQL 过程已成功完成。
SQL> print v_name;
V_NAME
--------------------------------
4
附:
为参数传递变量和数据位置传递,名称传递,组合传递三种
1.位置传递:在调用子程序时按照参数定义的顺序为参数指定相应的变量或数值
exec add_dept(40,'sales','new york');
exec add_dept(10);
2.名称传递:在调用子程序时指定参数名,并使用关联符号=>为其提供相应的数值或变量
exec add_dept(dname=>'sales',dno=>50);
exec add_dept(dno=>30);
3.组合传递:同时使用位置传递和名称传递
exec add_dept(50,loc=>'new york');
exec add_dept(60,dname=>'sales',loc=>'new york');
查看过程原代码
oracle会将过程名,源代码以及其执行代码存放到数据字典中.执行时直接按照其执行代码执行可查询数据字典(user_source)
select text from user_source where name='get_name';
删除过程
drop procedure get_name;
分享到:
相关推荐
oracle 存储过程 实例 教程 oracle 存储过程 实例 教程 对于初学者来说是很好的例题
### Oracle存储过程实例详解 #### 一、存储过程概述 Oracle 存储过程是一种数据库对象,可以在数据库服务器上编译并执行预定义的 SQL 语句或 PL/SQL 代码块。通过创建存储过程,可以实现更高效的数据处理、逻辑...
水晶报表连接Oracle存储过程实例 本文将详细介绍如何使用水晶报表连接Oracle存储过程实例,从而实现数据报表的自动化生成。我们将从创建 Oracle 存储过程开始,接着指导读者如何在水晶报表中应用该存储过程。 一、...
在本例中,“Oracle存储过程实例使用显示游标”着重展示了如何在存储过程中调用函数,并通过游标来处理和更新数据。 首先,我们需要了解存储过程的基本结构。一个存储过程通常包含以下部分: 1. **声明部分**:在...
ORACLE数据库存储过程和mysql数据库存储过程实例,以及存储过程的优化。
Oracle存储过程是数据库管理系统中的一种重要特性,它允许开发者编写包含一系列SQL语句和PL/SQL块的可重用代码段。在这个“Oracle的一个简单存储过程实例”中,我们可以看到如何在Oracle环境中创建、调用和管理存储...
oracle存储过程实例1
这个"Oracle存储过程学习经典(实例)"资源显然是为初学者设计的,旨在帮助他们掌握如何创建、执行和管理存储过程。 存储过程在数据库管理中扮演着关键角色,它可以提升系统的性能,通过减少网络流量和提供预编译的...
下面,我们将深入探讨Oracle存储过程的关键概念,并通过一个具体的实例来理解其构建和执行流程。 ### Oracle存储过程概述 存储过程在数据库服务器上运行,可以包含控制流语句、变量定义、错误处理等结构,使其具备...
oracle存储过程实例PPT教案.pptx
本实例将探讨如何使用C#通过VS2010访问Oracle存储过程。 首先,你需要在VS2010中创建一个新的C#项目,选择相应的.NET Framework版本,如4.0。然后,确保你的系统已经安装了Oracle客户端或者ODP.NET(Oracle Data ...