Hola a todos mi duda es la siguiente,un stored procedure aunque contenga varias sentencias sql,por ejemplo 3 inserts,se comporta como una unica intruccion al ejecutarse??es decir es como si fuera una unica sentencia sql??si alguna de esas sentencias sql que contiene fallase por el motivo que fuese almacenaria el error en @ERROR???si en la 2 sql del stored procedure se cae el servidor,al volver a retomar la conexion se hace automaticamente un rollback???
Esto lo necesito saber,porque estoy haciendo una aplicacion en C# pero donde todas las sentencias sql las realizo con stored procedures,y para cada stored procedure que ejecuto quiero que me devuelva si se ejecuto con exito o no para mostrarlo por pantalla pero no se como hacer esto.
Os pongo un ejemplo simple de lo que estoy haciendo:
CREATE PROCEDURE dbo.EliminarDetallesPedido
@Error int OUTPUT
@IdPedido int
AS
BEGIN
SET @Error = -1;
DELETE FROM dbo.DetallesPedido WHERE IdPedido = @IdPedido;
SET @Error = 0;
END
Con esto que estoy haciendo supongo que si se ejecuta el delete luego la variable @Error se me pondra a 0 con lo cual no hay error,pero que pasa si se produce un error en el delete o se cae el servidor??se ejecuta el SET @Error = 0??si no es asi se hace automaticamente un rollback??
Gracias.