日期:2014-05-17  浏览次数:20353 次

SQL下“存储过程”的"执行顺序"
Exec   Usp_TransferDAListToEnergyDataN    @MeterNo,@MeterType,@DATime,@IncreaseQty,@Unit;

Exec   Usp_TransferDAListToEnergyDataBySum    @MeterNo,@MeterType,@DATime,@IncreaseQty,@Unit;

这样两个执行存储过程的语句是在一个SQL中的。   

请问大师:

      1、数据库是“执行完第一个之后再执行第二个”,还是“两个一起执行”   ?

      2、 如果“两个一起执行”的话,当两个操作到“同一个表”,不就会出现死锁 ?

      3、如果先执行完第一个,再去执行第二个,“效率不就很低”吗?

还请各位大师多多指点。

------解决方案--------------------
1。这两个是先后执行的。
2。同上
3。效率低不低,代码的编写影响更大。
------解决方案--------------------
个人愚见:
1.执行完第一个之后再执行第二个。
2.无
3.各自功能不同,如有重复操作则效率会低,否则 不会低。
------解决方案--------------------
先后执行的
不会去同时执行的,这样很可能造成逻辑错误的
比如说第二个过程需要第一个过程返回的参数,那怎么同时呢?

单个过程在复杂也是先后往下执行的,所有程序都这样吧


------解决方案--------------------
对于第三个  两个先后执行效率谁说会低了  是效率低下的原因首先是代码看你怎么编写的  如果写的不好 再加上数据又多   效率就会低   
在一个sql里  代码是按设定的顺序执行的  
其实我很纳闷  如果不同的客户端连接同一服务器同时进行了某个sql  那会不会有影响呢  不知道

------解决方案--------------------
是先后执行的。