加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle中执行存储过程call和exec区别

发布时间:2020-12-12 14:18:21 所属栏目:百科 来源:网络整理
导读:Oracle中执行存储过程call和exec区别 在 sqlplus 中这 两种方法 都可以使用: exec pro_name(参数1..); call pro_name(参数1..); 区别: 1.但是exec是sqlplus命令,只能在sqlplus中使用;call为SQL命令,没有限制. 2.存储过程 没有参数时 ,exec可以直接跟过


Oracle中执行存储过程call和exec区别

sqlplus中这两种方法都可以使用:

exec pro_name(参数1..);

call pro_name(参数1..);

区别:

1.但是exec是sqlplus命令,只能在sqlplus中使用;call为SQL命令,没有限制.

2.存储过程没有参数时,exec可以直接跟过程名(可以省略()),但call则必须带上().

Sql代码
  1. SQL>--创建过程插入数据
  2. SQL>createorreplaceprocedurepro1is
  3. 2begin--执行部分
  4. 3insertintomytestvalues('张三','mm');
  5. 4end;
  6. 5/
  7. Procedurecreated
  8. SQL>execpro1;
  9. PL/SQLproceduresuccessfullycompleted
  10. SQL>callpro1;
  11. callpro1
  12. ORA-06576:不是有效的函数或过程名
  13. SQL>callpro1();
  14. Methodcalled

总结:在调用过程时,应该养成使用call,且要带上()的习惯。


本文转自于:http://it4j.iteye.com/blog/2007204

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读