我们的系统在原来设计时的采用SP(存储过程)的总结:
SP最适用于报表这种大量SQL的组合,因为放在代码中组合大复杂,而集中放在SP中易于维护,速度快.
但如果是大量用户访问时,数据库性能没有办法提高它,而做在中间层代码就有得扩展(如CLB).并且易于移植到其它数据库.
也就是说我们的管理系统用户量少,在报表中可使用SP;而通讯系统(要扩展性能)使用代码组合SQL有利于以后扩展.
因此并不能象我们以前讨论那样,并不是SP好还是组合SQL语句好.就看你用到那里,
总结几点:
1.如果有比较复杂的业务逻辑 不建议采用SP(这要求程序员还要非常熟悉SQL才能读懂业务)
2.考虑移植性和扩展性 不建议采用SP
3.系统较大,考虑系统部署方便性,系统的分层性 不建议采用SP
4.碰到需要处理事务,回滚等内容 建议采用SP
5.考虑长久的维护性,调试和查问题复杂化,版本控制 不建议采用SP
6.SP一定要有文档对应,否则交互的系统一多,就不知道存储过程做什么的了!
博客围绕系统中存储过程(SP)和组合SQL语句的应用展开。指出SP适用于报表,集中管理易于维护且速度快,但大量用户访问时数据库性能难提升。管理系统用户量少可在报表用SP,通讯系统用代码组合SQL利于扩展。还总结了不同场景下SP的适用情况。

被折叠的 条评论
为什么被折叠?



