برای اینکه چندین دستور که در نتیجه یکدیگر اثرگذار هستند را باهم اجرا کنیم ،به عبارتی باید همه عملیات  به درستی انجام شوند در غیر اینصورت هیچ یک از عملیات نباید اجراء شود،در این شرایط حتما باید دستورات داخل بلوک تراکنش باشند،برای ساخت بلوک تراکنش به صورت زیر عمل می کنیم:


فرض کنید دستورات زیر را داریم:


INSERT DataMZ

SELECT @TID,@OrderId,@OrderDetailId,@meghdar,@radif,@actualAmount,null,@owner

 

UPDATE MojavezR

SET [transfer]=  @meghdar + [transfer]

WHERE Id = @OrderDetailId and [owner] =@owner


حالا می خواهیم این دستورات را در داخل بلوک تراکنش بگذاریم:

BEGIN TRY

    BEGIN TRANSACTION  

 

 

  INSERT DataMZ    

  SELECT@TID,@OrderId,@OrderDetailId,@meghdar,@radif,@actualAmount,null,@owner    

 

  UPDATE MojavezR    

  SET[transfer]=  @meghdar + [transfer]    

  WHERE Id = @OrderDetailId and [owner] =@owner    

 

              

  COMMIT   

END TRY

BEGIN CATCH

   IF @@TRANCOUNT > 0  

      ROLLBACK    

END CATCH