何时去存储过程而不是嵌入式SQL

5 sql plsql stored-procedures

我很困惑,因为何时在代码中使用存储过程而不是嵌入式SQL

当我用Google搜索时,我发现了这些观点

  • 它们允许模块化编程.
  • 他们可以减少网络流量.
  • 它们可以用作安全机制.

请告诉我网络流量与它有什么关系?

mar*_*c_s 5

SP的另一个主要优点:您可以在更改应用程序代码的情况下更改它们(修改错误,扩展)....还有另一层分离,这可能是有益的.

还有:安全.如果您将SProcs用于所有内容,则所有调用者在数据库EXECUTE权限方面需要的是对这些SProc的权限 - 他们不需要对表的直接读/写访问权限.


Kar*_*arl 2

他们可以通过仅将所需的数据返回给客户端来减少网络流量。

或者扭转局面;一种可能浪费网络流量的设计/编码实践是从数据库中选择一组数据,将其返回给客户端并在其中的某些数据集上进行处理。显然,如果您正在处理某些数据集,从流量角度来看,最好不要向客户端发送未处理的数据