论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Sql Server教程
Tag:注入,存储过程,分页,安全,优化,加密,索引,日志,压缩,base64,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,触发器,socket,安装,sqlserver2000,sqlserver2005,sqlserver2008,视频教程

存储过程与SQL语句的恩怨情仇

文章类别:Sql Server | 发表日期:2008-10-5 21:37:58

程序员说:存储过程还是SQL语句,这是一个问题。
江湖现在有三个流派,一个是SQL语句流的,崇尚使用SQL语句,一派是存储过程派的,崇尚用存储过程说话,还有一派是中庸派的,讲求和谐,所以也就前两派吵得厉害,中庸派的看热闹。现在SQL派的有 Nhibernate为首的众多ORM助阵,最近风生水起比较得意,存储过程派也有自己的杀手秘籍,两派互不相让,争斗由来已久。
存储过程派的追求速度,所谓天下无功无坚不破,唯快不破,这也是存储过程派的人行走江湖的最大本钱。之前存储过程派的攻击SQL语句派的还有一个秘籍就是安全,不过现在都没人用连接String的动态SQL的了,这招也就失效了。
SQL语句派是资格很老的流派,但是新手居多,老资格很多投奔敌营存储过程派了。Java帮的人很多都是SQL语句派的,而存储过程派的以微软帮的居多。
不过存储过程派也有软肋,可移植性就是其一,还有一点就是可扩展性,因为一般大型的Web应用程序都是多Web服务器,然后用双数据库服务器做双机热备,其中一台开机,但是是闲置的,这里只是解决单点故障的问题,但是形成了多Web应用服务器,单数据库服务器的情况,如果所有的运算都用存储过程实现,那么会造成数据库服务器负担过重,而Web服务器负荷不足的情况,而扩展数据库服务器的话就会非常的麻烦,而且投资较大,程序也需要改,而投资Web服务器就相对便宜而且扩容更加简单。
人在江湖漂哪有不挨刀,所以中庸一点比较保险,我比较倾向于用把较多的负担放到程序里来,而降低数据库得负担,因为只要数据库扛得住,再增加Web服务器那是比较容易的,但是一旦数据库服务器扛不住了我们就只有哭了。一般报表阿,还有一些结果集比较复杂的我就用存储过程来包装,一般的查询和CUID操作我都是找个ORM来搞定。

其实主要是在说存储过程的软肋。

视频教程列表
文章教程搜索
 
Sql Server推荐教程
Sql Server热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058