日期:2014-05-18  浏览次数:20376 次

所有数据库操作都使用存储过程,真的有必要吗?
在cnbeta看到bbsmax   2.0公测的消息,看了下介绍,里边提到“在数据库上,我们的开发蓝本为sql   server版,最大限度地对数据库结构优化,每一个索引和聚焦索引都精心设计确保查询时的高速和低占用,且100%的使用了存储过程,整个bbs总共有超过300个存储过程”

我怀疑真的有必要使用这么多存储过程吗?绝大部分语句应该都是只执行一次的吧?我认为多步操作用存储过程比较合适,数据库的性能最主要的还是看表结构和合理的索引吧?而且全部用存储过程以后要做改动也是相当麻烦。

不知道大家怎么看?

------解决方案--------------------
而且全部用存储过程以后要做改动也是相当麻烦。
-----------------------------------
用存储过程可以很方便地改代码而不用重新编译程序,怎么会麻烦呢?
------解决方案--------------------
根据实际情况而定。

存储过程的内容容易被破解。
------解决方案--------------------
同意楼主的意见,当查询语句过于简单时,有的时候用存储过程反而没有view 或直接用sql语句效率高
------解决方案--------------------
使用存储过程增加可维护性,sql语句写在服务器端可以集中维护,写在代码里不容易维护
存储过程还可以减少网络流量,如果写在代码里,会增加网络流量
------解决方案--------------------
一般说来,如果要在开发时作多层次开发,最好把对数据库的操作进行封装,其中有效的封装就是用存储过程来实现的,这种观念想法是从早期C/s架构流行时一直流传下来的。
如果是要做简单开发,或者是快速开发,好像这么做的人不多。
------解决方案--------------------
用存储过程更容易维护啊,
而且速度要快一些。
------解决方案--------------------
存储过程容易被破解?请告知...
------解决方案--------------------
我认为用存贮过程好些.因为这样好维护,比如程序逻辑需用改动,直接改一下存贮过程就行了,不用改程序呀.否则改了程序还要更新客户端软件,是不是呀,再说速度快,没有不好的.
有的项目不用存贮过程, 因为他们怕别人破他们的代码.其实是多余.
------解决方案--------------------
用存储过程移植不是很好
------解决方案--------------------
顶一个,都说的有道理,根据自己的水平,《小马过河》