oracle存储函数简单介绍及实例

原创 2012年03月22日 21:26:42

存储函数

Oracle提供可以把PL/SQL程序存储在数据库中,并可以在任何地方来运行它。这样就叫存储过程或函数。过程和函数统称为PL/SQL子程序,他们是被命名的PL/SQL块,均存储在数据库中,并通过输入、输出参数与其调用者交换信息。过程和函数的唯一区别是函数总向调用者返回数据,而过程则不返回数据。

一、函数(Function)为一命名的存储程序,可带参数,并返回一计算值。函数和过程的结构类似,但必须有一个RETURN子句,用于返回函数值。函数说明要指定函数名、结果值的类型,以及参数类型等。

二、建立存储函数的语法:

CREATE [OR REPLACE] FUNCTION 函数名(参数列表)

RETURN  函数值类型

AS

PLSQL子程序体;

三、Java语言中调用存储函数

存储函数,代码:

create or replace function sumSal(emp_no number)--function(参数的值  必须有类型)

return number--必须有返回值

as

--声明变量

  emp_sal emp.sal%type;

  emp_comm emp.comm%type;

  total emp.sal%type;

begin

  select sal,comm into emp_sal,emp_comm from emp where empno=emp_no;

  total:=emp_sal*12+nvl(emp_comm,0);

  return total;--必须返回  返回值类型一定相同

end;

 

Java程序,代码:

         publicstaticvoid testProduceSumSal() throws SQLException{

       //存储函数

       //参数 in out 参数     通过占位符

       CallableStatement cas = conn.prepareCall("{?=call sumSal(?)}");

       //1开始

       int index=1;

       //为占位符赋值

       //输出参数

 cas.registerOutParameter(index++,oracle.jdbc.OracleTypes.NUMBER);

       cas.setInt(index++,7369);

       boolean flag = cas.execute();

      

       System.out.println(flag);

       System.out.println(cas.getInt(1));

    }

四、 什么时候用存储过程、存储函数?

原则:如果只有一个返回值,用存储函数;否则,就用存储过程。

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

oracle创建存储过程和函数的简单例子

获取32位UUID的存储函数:CREATE OR REPLACE FUNCTION get_uuid RETURN VARCHAR IS guid VARCHAR (32); BEGIN guid ...

MySQL 中的自定义函数和存储过程 简单实例

需要说明的是:MySQL中没有表变量, 一般是通过临时表来存贮结果集的。 那么 我们如何取出在储存过程中select出来的结果集呢?如果是其它存储过程中,你可以使用生成的临时表。如果是java程序中...

Oracle存储过程基本语法介绍-实例

下面写一个简单的例子来对以上所说的存储过程的用法做一个应用:  现假设存在两张表,一张是学生成绩表(studnet) ,字段为:stdId,math,article,language,music,sp...

Oracle的字符处理函数简单介绍

oracle字符处理函数,首字母大写函数 Initcap(),转大写函数Upper(),转小写函数Lower();字符相加函数Concat(),字符长度函数Length();替换函数Replace()...

使用Oracle函数索引简单介绍(一般)

使用Oracle函数索引 提高查询效率 2010-10-25 10:55 佚名 互联网 我要评论(0) 字号:T | T 想要提高Oracle数据库的查询检索的效率,使用函...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)