Oracle存储过程及函数
1.在Oracle中,存储过程包括三部分组成:定义部分、执行部分、和异常处理部分(即例外)
eg1:输入员工编号,查询员工的姓名和薪资
create or repalce procedure mypro2 is
declare --定义部分,定义变量和常量等,变量定义一般以V_开头,常量定义一般以C_开头
v_ename varchar2(20);
v_sal number(7,2);
begin--执行部分
select ename,sal into v_ename,v_sal from emp where empno=&no;
dbms_output.put_line('员工的姓名是:'||v_ename||'工资是'||v_sal);
exception--异常处理部分
when no_data_found then
dbms_output.put_line('您输入的员工编号不存在');
end;
eg2:带参数的存储过程
--输入员工的姓名和新的薪资,根据姓名改薪资
create or replace procedure mypro2(pename varchar2,psal number) is
begin
update emp set sal=psal where ename=pename;
end;
存储过程的调用方法:
a:exec mypro1()或者call mypro1();
b:exec mypro1('SCOTT',1200)或者call mypro1('SCOTT',1200);
2.函数
函数必须有返回值的
结构如下:根据雇员名称求年薪
create or repalce function myfun1(fename varchar2) return number is yearsal nunber;
begin
select sal*12+nvl(comm,0) into yearsal from emp where ename=fename;
return yearsal;
end;
函数的调用方法:
SQL> var ys number;
SQL> call myf1('SCOTT') into:ys;
Oracle存储过程及函数的更多相关文章
- oracle 存储过程,函数和包
创建存储过程: 语法:create [or replace] PROCEDURE 过程名(参数列表) AS PLSQL子程序体: 调用 存储过程的方式 两种1.execute(exec) - ...
- JAVA调用Oracle存储过程和函数
连接数据库的工具类: import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; imp ...
- oracle 存储过程,存储函数,包,
http://heisetoufa.iteye.com/blog/366957 认识存储过程和函数 存储过程和函数也是一种PL/SQL块,是存入数据库的PL/SQL块.但存储过程和函数不同于已经介绍过 ...
- Oracle存储过程、函数、包加密wrap
wrap加密可以将PL/SQL的代码实现部分隐藏,提高代码的安全性,如存储过程.函数.包等都隐藏. wrap加密的方法有两种,下面以函数为例分别介绍一下: 方法一: 编写好函数后保存到 d:\test ...
- Oracle————存储过程与函数
存储过程存储过程参数模式包括IN.OUT. IN OUT. IN(默认参数模式):表示当存储过程别调用时,实参值被传递给形参:形参起变量作用,只能读该参数,而不能修改该参数.IN模式参数可以是变量或表 ...
- Oracle存储过程及函数的练习题
--存储过程.函数练习题 --(1)创建一个存储过程,以员工号为参数,输出该员工的工资create or replace procedure p_sxt1(v_empno in emp.empno%t ...
- Oracle存储过程和函数使用方法
一.存储过程(PROCEDURE) 使用过程, 不仅可以简化客户端应用程序的开发和维护,而且可以提高应用程序的运行性能. CREATE [OR REPLACE] PROCUDURE procedur ...
- oracle存储过程、函数、序列、包
一. 存储过程 1. 语法 create or replace procedure procedureName(seqName varchar2) is /*声明变量*/ n ); cursor cu ...
- Oracle - 存储过程、函数、包的使用练习-雇员
--存储过程范例:得到雇员表 emp 的记录数 begin --说明:若过程中要向外抛异常,请使用 exception when others then raise; 这个抛出的异常在程序里是可以捕获 ...
随机推荐
- WINDOWS下的SALT-MINION安装流水图
简单的下一步下一步, 没多少说的,可以在安装的时候设置MASTER和MINION的东东.. 不多说,上图:
- 人在江湖飘,哪能不挨刀。CENTOS之后,UBUNTU,FEDORA都要安装起来作测试啊
还好,我们有VIRTUAL BOX.
- PHP实现登录,注册,密码修改
注册,登录,修改密码 1.登录 2.忘记密码 3.免费注册 页面布局 <div id="views" class="views"> <div ...
- 在Win7下用XManager远程控制ubuntu
在Win7下用XManager远程控制ubuntu 远程主机通过xdmcp协议连接到ubuntu的图形终端,以图形终端方式登录. 远程主机是win7.ubuntu装在VMware虚拟机上,ubun ...
- Shader Forge 武器流光
使用Shader Forge 简直就是一种享受,相信会比BluePrint更好
- L - Oil Deposits
很清新的一道题,搜索里面最基础的题目,深搜广搜都可以.....不过还是喜欢深搜,写起来简单>.. //////////////////////////////////////////////// ...
- tomcat不用工程名访问怎么配置?
tomcat不用工程名访问配置,直接用域名访问 在 tomcat6的安装路径下,D:\Tomcat-6\conf,修改server.xml文件 编辑Host节点, <Host appBase=& ...
- js 魔鬼训练
1.Object.assign 偷梁换柱 / 融合 - 将多个对象合并到第一个对象中去.这样一来methods对象中就包含着data对象了.否则this无法正常访问data中的title var ne ...
- OpenReports操作指南
最近要玩OpenReports,但在网上找了一圈,能用的资料少得可怜,所以把最近使用下来,积累的一些技巧记录下来(有部分整合了网上的资源). 备注:以下操作说明基于已做汉化的项目(汉化方案请参考:ht ...
- Swift3.0已出坑-适配iOS10,项目迁移Swift3.0问题总结。
http://www.jianshu.com/p/27fd2a2b32e4 Yes表示swift版本为2.3 NO表示swift版本为3.0