函数和存储过程的区别
从参数的返回情况来看:
如果返回多个参数值最好使用存储过程,如果只有一个返回值的话可以使用函数;
从调用情况来看:
如果在SQL语句(DML或SELECT)中调用的话一定是存储函数或存储的封装函数不可以是存储过程,但调用存储函数的时候还有好多限制以及函数的纯度等级的问题,你可以参考如果是在过程化语句中调用的话,就要看你要实现什么样的功能。函数一般情况下是用来计算并返回一个计算结果而存储过程一般是用来完成特定的数据操作(比如修改、插入数据库表或执行某些DDL语句等等),所以虽然他们的语法上很相似但用户在使用他们的时候所需要完成的功能大部分情况下是不同的。
======================================================================
存储过程和函数:
例子:
//创建过程
create or replace procedure add_emailinfo(namee email_info.fullname%type ,address email_info.email_address%type )
is
begin
insert into email_info(fullname,email_address) values (namee,address);
end;
//调用过程
call add_emailinfo('cherry','asdfsdf');
/////////////////////////////////////////////////////////////////////////////////////
//创建函数
create or replace function sel_emailinfo(namee email_info.fullname%type )
return varchar2 is
address varchar2(30);
begin
select email_address into address from email_info
where trim(fullname)=trim(namee);
return address;
end ;
//调用函数
select sel_emailinfo('bbb') from dual;
另:
函数其实不是单纯的返回一个值,也可以是一个type,可以再rowtype中定义一系列字段,用rowtable引用,函数直接返回rowtable。可见前几遍博文。
分享到:
相关推荐
oracle笔记存储函数和存储过程,有具体的代码案例!存储函数和存储过程的知识笔记!
oracle 的函数、存储过程、游标、简单实例 oracle常用语句oracle 的函数、存储过程、游标、简单实例 oracle常用语句
如何调用oracle的函数、存储过程
oracle函数大全及存储过程语法 oracle函数大全及存储过程语法 oracle函数大全及存储过程语法 oracle函数大全及存储过程语法
oracle函数调用存储过程.doc
Oracle中的函数、存储过程、包. 函数 ①系统函数 ②自定义函数 ③使用函数 ④编写过程 ⑤过程的调用
oracle 函数 oracle函数 存储过程
Oracle常用Oracle、函数、存储过程[归类].pdf
里面包含了oracle中最基本的函数和存储过程的例子,可咦更加直观的学好函数和存储过程
你还在为如何调用oracle中的存储过程和函数而烦恼吗,请看看该文档。
Oracle存储过程和函数(最详细包含emp 表实例操作,边看边操作),目前最详细的存储过程文档,不好你举报我。含好多ORACLE SCOTT中emp表的实例。
oracle 存储过程 函数 dblink 绝对对工作和平时学习有价值的资料。针对个人具体情况做修改即可使用
Oracle存储过程、游标、函数的详解
ibatis调用oracle的函数,存储过程的方法,从网上收集的,还没有整理。
oracle函数大全与存储过程语法 ,有9I,10G的oracle函数和存储过程语法,
java调用oracle存储过程或者函数
oracle函数大全及存储过程语法 chm