使用存储过程可以减少客户端和服务器之间的网络流量,因为命令是作为一批代码执行的。这意味着只有通过网络发送执行该过程的调用,而不是单独发送的每一行代码。
客户端和服务器之间的网络流量是多少? 有人可以通过一些实时示例让我理解吗?
谢谢
答案 0 :(得分:1)
想象一下,您有10个不同的聚合表需要不时地计算(截断和重新计算),并且执行此操作的代码需要200行TSQL。如果您通过网络通过客户端发出此命令,则必须将所有200行代码发送到服务器。
如果您创建包含执行此操作的脚本的存储过程,则客户端只需要发送1行代码;执行存储过程的那个。这只是使用存储过程的一个好处,还有更多(脚本已编译,更好的安全处理等)。
执行此更改所节省的时间将在很大程度上取决于您尝试执行的脚本/批处理的大小以及客户端和服务器之间的网络连接。将此命令从Application Server发送到同一数据仓库中的数据库服务器与将其从连接到意大利的SQL Server数据库的新加坡SSMS发送不同。