store procedure

08/03/2006 - 18:48 por Juosepe | Informe spam
Saludos,

Quiero hacer una sp con tres instrucciones
"update tabla1..."
"update tabla2..."
"update tabla3..."

Quiero que si ejecuten en modo "Transaction" como una unidad:
Si hay algun problema en la instrucción 2 o 3 se tire para atras las
instrucciones anteriores y no se ejecuten

Como lo puedo hacer?
Tiene alguna implicación en las tablas? las bloquea?
Se puede acceder/insertar en la tabla en el mismo instante en que se ejecuta
la transacción?

Muchas gracias.
 

Leer las respuestas

#1 Noldis Chumacero
08/03/2006 - 20:50 | Informe spam
Juosepe,

Las instrucciones que tienes que utilizar son:

BEGIN TRANSACTION @El_Nombre_de_la_transaccion
UPDATE Tabla 1
UPDATE Tabla 2...
UPDATE Tabla 3...
COMMIT TRANSACTION @El_Nombre_de_la_transaccion

Si las existe un bloqueo, dependiendo la actualización de tus datos puede
ser un bloquedo por registro, o por tabla. Revisa el procedimiento
almacenado sp_lock para ver el bloqueo.

Se puede acceder a la tabla dependiendo los permisos que le diste de acceso
y también si la concurrencia es Optimista o Pesimista, revisa SET
TRANSACTION ISOLATION LEVEL

Saludos.

Ing. Noldis Chumacero Chávez
Departamento de Sistemas
AeroSur S.A.
Santa Cruz de la Sierra, Bolivia
Telf. 3364446(236) 77074919
"Juosepe" escribió en el mensaje
news:

Saludos,

Quiero hacer una sp con tres instrucciones
"update tabla1..."
"update tabla2..."
"update tabla3..."

Quiero que si ejecuten en modo "Transaction" como una unidad:
Si hay algun problema en la instrucción 2 o 3 se tire para atras las
instrucciones anteriores y no se ejecuten

Como lo puedo hacer?
Tiene alguna implicación en las tablas? las bloquea?
Se puede acceder/insertar en la tabla en el mismo instante en que se
ejecuta la transacción?

Muchas gracias.



Preguntas similares