¿Podemos utilizar la transacción en el procedimiento almacenado?
¿Podemos utilizar la transacción en el procedimiento almacenado?

Video: ¿Podemos utilizar la transacción en el procedimiento almacenado?

Video: ¿Podemos utilizar la transacción en el procedimiento almacenado?
Video: Procedimientos Almacenados: ¿Qué son? ¿Para qué sirven? ¿Cómo se usan? - Te lo explico en 10 minutos 2024, Mayo
Anonim

Si nosotros tener más de una instrucción SQL en ejecución en el procedimiento almacenado y nosotros desea revertir cualquier cambio realizado por cualquiera de las sentencias SQL en caso de que ocurriera un error debido a una de las sentencias SQL, podemos usar la transacción en el procedimiento almacenado.

Precisamente, ¿los procedimientos almacenados se ejecutan en una transacción?

Anidado procedimientos almacenados están ejecutado en el transacción contexto de lo más externo procedimiento almacenado . Ésta es la configuración predeterminada. Proporciona el comportamiento predeterminado descrito anteriormente. Es decir, todas las sentencias SQL en un ejecutar procedimiento almacenado como soltero transacción cuadra.

Además de lo anterior, ¿podemos utilizar la confirmación en el procedimiento? En general, procedimientos no debe cometer . Si tu cometer dentro de un almacenado procedimiento , está limitando su reutilización porque una persona que llama que quiere los cambios procedimiento hace que sea parte de una transacción más grande no puede simplemente llamar al procedimiento directamente.

Con respecto a esto, ¿podemos usar la transacción en la función SQL?

1 respuesta. Es por eso actas son innecesarios para sql -servidor funciones . Sin embargo, tu pueden cambio transacción nivel de aislamiento, por ejemplo, puede usar Sugerencia NOLOCK para llegar a "lectura no confirmada" transacción nivel de aislamiento y leer datos no comprometidos de otros actas.

¿Podemos usar transacciones anidadas en SQL si es así, entonces cómo?

SQL El servidor realmente no es compatible transacciones anidadas . Sólo hay uno transacción a la vez. Éste transacción tiene un básico transacción anidada contador, @@ TRANCOUNT. Cada comienzo consecutivo transacción incrementos los contador por uno, cada compromiso transacción lo reduce en uno.

Recomendado: