项目开发中使用存储过程和直接使用SQL语句的区别

 我来答
鬼谷子教主
2016-11-30 · TA获得超过2496个赞
知道大有可为答主
回答量:1996
采纳率:88%
帮助的人:561万
展开全部
1,sp在后台,而SQL在前台。相对而言,前者具有更大的灵活性;
2,sp是参数化的,而SQL可能是动态拼装的。因此,DBMS在执行时,前者效率更高(因为直接从Cache区中取出,不再需要解析)
3,使用SQL进行动态组装,代码不够清晰,有点啰嗦
--遇到单引号【'】需要额外处理
-- 若使用StringReplace还好些
4,多条件组合时,两者各有利弊。SQL可能因用户条件选择少而执行效率高(语句简单);而sp的执行效率都取决于全部条件的组合。

但全部都用sp也不可取
5、如果管理不良,多人的sp堆积在DB中,会比较混乱。
6、简单的查询,使用sp,开发效率低(毕竟还要在后台额外开发;变更也可能要同时改2个地方)

基本使用经验总结:
A)简单查询,使用前台SQL;
B)可能变化(尤其客户定制)、重复执行、追求效率的,尽量使用后台sp.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式