¿ Escritura eficaz y exitosa SQL ( lenguaje de consulta estructurado ) secuencias pueden ser tanto un arte como una ciencia. Hay ciertas estructuras y la terminología que deben ser utilizados para producir el resultado que el programador quiere . En SQL Server, una transacción es una unidad específica y aislada del trabajo. Cada unidad tiene que completar antes de iniciar otra unidad, y cada operación tiene que contar hasta el final. Esto se logra con el comando " commit transaction ", que hace varias cosas para el desarrollador . Acabados una transacción
Los servidores , en el curso de cálculo de una transacción en particular , puede realizar muchas tareas diferentes . Idealmente, el desarrollador escribe una transacción completa que tanto produce el resultado deseado , y lo hace en un orden lógico . Al emitir el comando COMMIT TRANSACTION , el programador le dice al servidor que todos los cálculos asociados a esta operación concreta se han completado y escribir de forma permanente los resultados a la base de datos.
Libera
Recursos
Un ordenador sólo procesará código ejecutable en el orden en que se escribe . Esto significa que hasta que la transacción se cierre , los recursos destinados a la ejecución de esta transacción no serán puestos a disposición para otras operaciones o tareas. Confirmación de transacción , si acopla correctamente con un comando BEGIN TRANSACTION correspondiente , va a liberar estos recursos y permitir que el servidor de avanzar en otros cálculos.
Mantiene un registro de transacciones abiertas
< br >
Cada transacción debe ser iniciado por un comando BEGIN TRANSACTION . El servidor lleva la cuenta de cada transacción incremental agregar uno a una cuenta corriente de todas las transacciones abiertas. Si hay otras transacciones abiertas , una orden de confirmación de la transacción disminuirá lo que cuenta por uno , pero esto no significa necesariamente volver a cero. Un recuento mayor que cero significa que todas las transacciones abiertas no se han completado . Esto significa que los registros no son permanentes , y los recursos no han sido liberados .
Permite cálculos complejos
El comando COMMIT TRANSACTION también controla las transacciones "anidadas" . El programador se inicia una transacción y luego puede escribir muchas de las transacciones relacionadas con el complejo dentro de ella. Cada transacción anidada debe tener una orden de confirmación, y la transacción original se debe entonces cerrada para hacer todos los cálculos permanente. Confirmación de transacción también le da al desarrollador una pequeña medida de la captura de error . Si el recuento es cero cuando se da la orden de confirmación , se genera un error porque no hay un mandato correlacionar comenzar.