Oracle中存储过程 函数和函数中IS和AS的区别

博客访问: 1464796
博文数量: 151
注册时间:
认定了正确的事,就要坚持做下去----OCP10g 、OCP11g
分类: Oracle 17:05:42
一直纠结于存储过程的is与as最近在网上查了巨多资料,总结如下:
在存储过程(PROCEDURE)和函数(FUNCTION)中没有区别;
在视图(VIEW)中只能用AS不能用IS;
在游标(CURSOR)中只能用IS不能用AS。
从其定义也可以看出没什么区别,要是有估计暂时也很少有人发下:
create [or replace] procedure procedure_name
&[(parameter_name [in | out | in out] type [,........])]
& {is | as}
&procedure_body
end procedure_
阅读(13666) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。oracle存储过程到底是is还是as啊_百度知道
oracle存储过程到底是is还是as啊
我看到很多人写的是as,但是也有一些人说是is,请问,究竟是哪个了,他们有什么区别了
我有更好的答案
没什么区别,一样的,都可以用~~
采纳率:35%
这2个都可以的!!!
为您推荐:
其他类似问题
您可能关注的内容
存储过程的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。oracle中存储函数与存储过程的区别介绍
转载 &更新时间:日 10:32:36 & 作者:Jamyson
这篇文章主要介绍了oracle中存储函数与存储过程的区别介绍,非常不错,具有参考借鉴价值,需要的朋友可以参考下
在oracle中,函数和存储过程是经常使用到的,他们的语法中有很多相似的地方,可是也有它们的不同之处,这段时间刚学完函数与存储过程,来给自己做一个总结:
一:存储过程:简单来说就是有名字的pl/sql块。
语法结构:&
create or replace 存储过程名(参数列表)
--定义变量
&&& 案例:&&&&&&&&&
create or replace procedure add_(a int,b int)
dbms_output.put_line(c);
&&& 调用存储过程
add_(12,34);
存储过程的三种类型参数:
输入参数(默认) in
输出参数 out
输入输出参数 in out
&&&&&&& 语法结构:&&&&&&&&&
create or replace function 函数名(参数列表) return 类型
&&&&&&& 案例:&&&&&&&&&
create or replace function f1(n1 dec,n2 dec) return dec
r dec(19,2);
when zero_divide then
dbms_output.put_line('除数不能为0');
存储过程与存储函数的区别和联系:
相同点:1.创建语法结构相似,都可以携带多个传入参数和传出参数;
2.都是一次编译,多次运行;
不同点:1.存储过程定义关键字用procedure,函数定义用function;
2.存储过程中不能用return返回值,但函数中可以,而且函数中必须有return返回;
3.执行方式略有不同,存储过程的执行方式有两种(1.使用2.使用begin和end)函数除了
存储过程的两种方式,还可以当做表达试使用,例如放在select中(select f1())
总结:如果只有一个返回值,用存储函数,否则,一般用存储过程。
以上所述是小编给大家介绍的oracle中存储函数与存储过程的区别介绍,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具oracle函数和存储过程有什么区别_百度知道
oracle函数和存储过程有什么区别
我有更好的答案
1. 返回值的区别,函数有1个返回值,而存储过程是通过参数返回的,可以有多个或者没有
2.调用的区别,函数可以在查询语句中直接调用,而存储过程必须单独调用.
函数一般情况下是用来计算并返回一个计算结果而存储过程一般是用来完成特定的数据操作(比如修改、插入数据库表或执行某些DDL语句等等)
参数的返回情况来看:
如果返回多个参数值最好使用存储过程,如果只有一个返回值的话可以使用函数;
从调用情况来看:
如果在SQL语句(DML或SELECT)中调用的话一定是存储函数或存储的封装函数不可以是存储过程,但调用存储函数的时候还有好多限制以及函数的纯度等级的问题.
oracle函数和存储过程最大的区别就在于,函数必须带上一个return返回值,后面跟的是返回值的类型,而存储过程可以不带任何返回值。
另外,存储过程和函数同样支持in,out,in out这三种类型的参数,对应的是分别指明输入性的参数、输出型的参数、输入输出型的参数。也就是说如果我们需要返回多个值,除了可以使用存储过程来实现之外,也可以用函数来实现,方法是你将其中一个用return来返回,其他就指明该数据为out参数就可以了。
Oracle中存储过程和函数都可以返回值,但是函数必须要返回值,并一般只返回一个值,而存储过程则没有这个限制。从一般应用上来看,如果不需要返回值或者需要多个返回值,使用存储过程,如果只用一个返回值,就使用函数,从一般程序员的习惯上来看,这样更符合思维。
采纳率:63%
最简单的解释是 , 函数返回值,而存储过程不返回。
为您推荐:
其他类似问题
存储过程的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。oracle存储过程中is和as到底有哪些区别?
[问题点数:50分,结帖人songyafei123]
本版专家分:0
结帖率 90%
CSDN今日推荐
本版专家分:371
本版专家分:24560
2010年9月 Oracle大版内专家分月排行榜第一2010年8月 Oracle大版内专家分月排行榜第一
2011年3月 Oracle大版内专家分月排行榜第二2011年2月 Oracle大版内专家分月排行榜第二
2010年10月 Oracle大版内专家分月排行榜第三
本版专家分:15516
2012年6月 Oracle大版内专家分月排行榜第一2012年5月 Oracle大版内专家分月排行榜第一
2013年10月 Oracle大版内专家分月排行榜第二2012年3月 Oracle大版内专家分月排行榜第二
2013年9月 Oracle大版内专家分月排行榜第三2013年6月 Oracle大版内专家分月排行榜第三2012年7月 Oracle大版内专家分月排行榜第三2012年4月 Oracle大版内专家分月排行榜第三
本版专家分:20305
2012年3月 Oracle大版内专家分月排行榜第一2012年2月 Oracle大版内专家分月排行榜第一2012年1月 Oracle大版内专家分月排行榜第一2011年12月 Oracle大版内专家分月排行榜第一2011年11月 Oracle大版内专家分月排行榜第一
2012年5月 Oracle大版内专家分月排行榜第二2012年4月 Oracle大版内专家分月排行榜第二
本版专家分:3073
2012年2月 Oracle大版内专家分月排行榜第二
本版专家分:0
本版专家分:0
结帖率 90%
匿名用户不能发表回复!|
CSDN今日推荐

我要回帖

更多关于 存储过程 函数 的文章

 

随机推荐