比如有两个sql语句,分别为sql1,sql2.
sql2需要sql1执行后的结果,那我应该
$res = sql1
if($res){
sql2
}
还是把这两个sql写成一个存储过程来调用? 那种方法是比较合理,正规?谢谢!!!
首先看SQL执行类型,是查询SQL,还是事务SQL;其次要看SQL的复杂度,考虑一下可维护性;最后考虑在满足业务要求的前提下,优先选择性能最优方案;如果是查询SQL且比较简单,可组合一条SQL代码执行;如果SQL比较复杂,且需要对执行结果进行过程处理,可以选择存储过程实现;但如果是事务SQL,首先要确保事务的一致性,要在代码中控制好,非常重要!
这个属于开发方式选择的问题,一般在系统开发前会确定整体原则,业务逻辑是放在php还是数据库,如果选择放在数据库的话,php中调用一个存储过程就会完成所需的业务操作。
如果比较简单的系统,放到php中开发起来比较方便。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。