在oracle中,函数和存储过程是经常使用到的,他们的语法中有很多相似的地方,可是也有它们的不同之处,这段时间刚学完函数与存储过程,来给自己做一个总结:
一:存储过程:简单来说就是有名字的pl/html" target="_blank">sql块。
语法结构:
create or replace 存储过程名(参数列表) is --定义变量 begin --pl/sql end;
案例:
create or replace procedure add_(a int,b int) is c int; begin c:=a+b; dbms_output.put_line(c); end;
调用存储过程
declare begin add_(12,34); end;
存储过程的三种类型参数:
输入参数(默认) in
输出参数 out
输入输出参数 in out
函数定义
语法结构:
create or replace function 函数名(参数列表) return 类型 is begin end;
案例:
create or replace function f1(n1 dec,n2 dec) return dec is r dec(19,2); begin r:=n1/n2; return r; exception when zero_divide then dbms_output.put_line('除数不能为0'); return 0; end;
存储过程与存储函数的区别和联系:
相同点:1.创建语法结构相似,都可以携带多个传入参数和传出参数;
2.都是一次编译,多次运行;
不同点:1.存储过程定义关键字用procedure,函数定义用function;
2.存储过程中不能用return返回值,但函数中可以,而且函数中必须有return返回;
3.执行方式略有不同,存储过程的执行方式有两种(1.使用execute;2.使用begin和end)函数除了
存储过程的两种方式,还可以当做表达试使用,例如放在select中(select f1() from dual;)
总结:如果只有一个返回值,用存储函数,否则,一般用存储过程。
以上所述是小编给大家介绍的oracle中存储函数与存储过程的区别介绍,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
本文向大家介绍谈谈sqlserver自定义函数与存储过程的区别,包括了谈谈sqlserver自定义函数与存储过程的区别的使用技巧和注意事项,需要的朋友参考一下 一、自定义函数: 1. 可以返回表变量 2. 限制颇多,包括 不能使用output参数; 不能用临时表; 函数内部的操作不能影响到外部环境; 不能通过select返回结果集; 不能update
本文向大家介绍oracle 存储过程详细介绍(创建,删除存储过程,参数传递等),包括了oracle 存储过程详细介绍(创建,删除存储过程,参数传递等)的使用技巧和注意事项,需要的朋友参考一下 oracle 创建,删除存储过程,参数传递,创建,删除存储函数,存储过程和函数的查看,包,系统包 认识存储过程和函数 存储过程和函数也是一种PL/SQL块,是存入数据库的PL/SQL块。但存储过程和函数不同于
本文向大家介绍MySql存储过程与函数详解,包括了MySql存储过程与函数详解的使用技巧和注意事项,需要的朋友参考一下 存储过程和函数是在数据库中定义一些SQL语句的集合,然后直接调用这些存储过程和函数来执行已经定义好的SQL语句。存储过程和函数可以避免开发人员重复的编写相同的SQL语句。而且,存储过程和函数是在MySQL服务器中存储和执行的,可以减少客户端和服务器端的数据传输。 一、存储过程 1
我可以在Oracle中通过ODBC执行一批存储过程吗?存储过程具有我使用参数标记绑定的输入参数。 在SQLServer中,我有这个功能,在DB2中,我只能进行批处理插入/更新,但我不能从ODBC/C代码批处理存储过程。 Oracle似乎支持插入语句的批处理,如果使用JDBC,也可以批处理存储过程。 是否可以做同样的事情,但使用对存储过程和ODBC的调用? 谢谢
问题内容: 在MySQL数据库上下文中,以下3个术语有什么区别: 存储过程 存储功能 存储例程 像那些日期时间功能(例如等)之类的内置功能也被认为是什么? 问题答案: Google是您的朋友。“ mysql例程功能过程”的第一个匹配项是:http : //dev.mysql.com/doc/refman/5.0/en/stored-routines- syntax.html 快速总结: 存储的例程
本文向大家介绍asp.net中oracle 存储过程(图文),包括了asp.net中oracle 存储过程(图文)的使用技巧和注意事项,需要的朋友参考一下 在大型数据库系统中,存储过程和触发器具有很重要的作用。无论是存储过程还是触发器,都是SQL 语句和流程控制语句的集合。 ORACLE代码 C#代码 调用方法 以上内容是通过代码介绍了asp.net中oracle存储过程。 接下来通过第二种的方式