`

Oracle 10g存储过程学习二——为参数传递变量和数据

阅读更多
--在创建存储过程时,为参数传递变量和数据
create or replace procedure add_dept
(dno number,dname varchar2 default null,loc varchar2 default null)
is
begin
insert into dept values(dno,dname,loc);
exception
when dup_val_on_index then
raise_application_error(-2000,'部门号不能重复');
end;

--1、位置传递
--位置传递是指在调用存储过程时,按照参数定义的顺序依次为参数指定相应变量或者数值,有默认值的参数,可以不赋值
exec add_dept(50,'sales','new york');
exec add_dept(60);
exec add_dept(70,'admin');


--2、名称传递
--名称传递是指在调用子程序时,指定参数名,并使用关联符号'=>'为其提供相应的数值或变量
exec add_dept(dname=>'sales',dno=>50);
exec add_dept(dno=>60)
;
--3、组合传递
--组合传递是指在调用存储过程时,同时使用位置传递和名称传递
exec add_dept(60,name=>'sales',loc=>'new york');



--2、查看存储过程源代码
--当存储过程建立后,oracle将过程名、源代码机器执行代码存放到数据字典中。我们可以通过查询urser_source查看当前用户的所有存储过程,过程名称需要大写
select text from user_source where name = 'ADD_DEPT';



    1 "procedure add_dept"
    2 "(dno number,dname varchar2 default null,loc varchar2 default null)"
    3 "is"
    4 "begin"
    5 "insert into dept values(dno,dname,loc);"
    6 "exception"
    7 "when dup_val_on_index then"
    8 "raise_application_error(-2000,'部门号不能重复');"
    9 "end;"
分享到:
评论

相关推荐

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    Karen Morton及其团队在本书中提供了专业的方案:先掌握语言特性,再学习Oracle为提升语言效率而加入的支持特性,进而将两者综合考虑并在工作中加以应用。作者通过总结各自多年的软件开发和教学培训经验,与大家...

    PLSQLDeveloper下载

    过程:Create or replace procedure procname(参数列表) as PL/SQL语句块 函数:Create or replace function funcname(参数列表) return 返回值 as PL/SQL语句块 为便于理解,举例如下: 问题:假设有一张表t1,有f1...

    php网络开发完全手册

    16.3.3 存储过程的参数 265 16.3.4 复合语句 267 16.3.5 变量 268 16.3.6 条件语句 269 16.3.7 循环语句 271 16.3.8 游标 273 16.3.9 存储过程的删除 275 16.4 触发器的设计 275 16.4.1 触发器的创建与触发 275 ...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例102 解析URL地址中传递的编码参数 134 实例103 转义帖子中的特殊字符 135 实例104 获取任意字符的ASCII码 136 实例105 查找指定ASCII码对应的字符 136 实例106 合理定义上传文件的名称 137 实例107 通过异或方式...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例102 解析URL地址中传递的编码参数 134 实例103 转义帖子中的特殊字符 135 实例104 获取任意字符的ASCII码 136 实例105 查找指定ASCII码对应的字符 136 实例106 合理定义上传文件的名称 137 实例107 通过异或方式...

    PLSQL Developer 7.1.5

     集成调试器(要求Oracle 7.3.4或更高)——该调试器提供您所需要的全部特性:跳入(Step In)、跳过(Step Over)、跳出(Step Out)、异常时停止运行、断点、观察和设置变量、观察全部堆栈等。基本能够调试任何...

    亮剑.NET深入体验与实战精要2

    5.4.1 SQL和存储过程级别的事务 227 5.4.2 ADO.NET级别的事务 229 5.4.3 ASP.NET页面级别的事务 230 5.4.4 企业级服务COM+事务 231 5.4.5 System.Transactions 事务处理 236 5.5 Oracle开发常见问题 240 5.5.1 ...

    亮剑.NET深入体验与实战精要3

    5.4.1 SQL和存储过程级别的事务 227 5.4.2 ADO.NET级别的事务 229 5.4.3 ASP.NET页面级别的事务 230 5.4.4 企业级服务COM+事务 231 5.4.5 System.Transactions 事务处理 236 5.5 Oracle开发常见问题 240 5.5.1 ...

    PL/SQL Developer v8.0.zip

    集成调试器(要求Oracle 7.3.4或更高)——该调试器提供您所需要的全部特性:跳入(Step In)、跳过(Step Over)、跳出(Step Out)、异常时停止运行、断点、观察和设置变量、观察全部堆栈等。基本能够调试任何程序...

    PL/SQL Developer

     集成调试器(要求Oracle 7.3.4或更高)——该调试器提供您所需要的全部特性:跳入(Step In)、跳过(Step Over)、跳出(Step Out)、异常时停止运行、断点、观察和设置变量、观察全部堆栈等。基本能够调试任何...

    PLSQL Developer(免安装、汉化版,很好用的) 8.0.3.1510.rar

     集成调试器(要求Oracle 7.3.4或更高)——该调试器提供您所需要的全部特性:跳入(Step In)、跳过(Step Over)、跳出(Step Out)、异常时停止运行、断点、观察和设置变量、观察全部堆栈等。基本能够调试任何...

    PL/SQL Developer 6.05注册版-1

    <br>集成调试器(要求Oracle 7.3.4或更高)——该调试器提供您所需要的全部特性:跳入(Step In)、跳过(Step Over)、跳出(Step Out)、异常时停止运行、断点、观察和设置变量、观察全部堆栈等。基本能够调试...

    PL/SQL Developer 7.1.5 注册版

    <br>集成调试器(要求Oracle 7.3.4或更高)——该调试器提供您所需要的全部特性:跳入(Step In)、跳过(Step Over)、跳出(Step Out)、异常时停止运行、断点、观察和设置变量、观察全部堆栈等。基本能够调试...

    PL/SQL Developer 7.1.5 注册版-3

    <br>集成调试器(要求Oracle 7.3.4或更高)——该调试器提供您所需要的全部特性:跳入(Step In)、跳过(Step Over)、跳出(Step Out)、异常时停止运行、断点、观察和设置变量、观察全部堆栈等。基本能够调试...

Global site tag (gtag.js) - Google Analytics