Oracle数据库中函数与存储过程的区别?
函数比须有返回值 可以单独执行 可以嵌入SQL中执行。
存储过程没有返回值,必须通过execute执行,不能嵌入到SQL中执行
其实简单的从定义上说就是:
函数是需要返回值的,比如我想统计A部门的绩效总和,就可以把计算的逻辑放在函数里面,最后返回一个值,然后把该函数就当一个查询结果来使用,从而达到调用的目的,如select calcSal() from dual;
存储过程是没有返回值的,你可以吧一些更新或者过程化处理的东西放在存过里面,比如我需要根据某个条件更新数据某个表,那么更新语句就可以放在存过里面