Transacciones Sql

Páginas: 13 (3158 palabras) Publicado: 10 de diciembre de 2012
[pic]
1. Objetivos

Después de realizar esta práctica, el alumno será capaz de:

✓ Definir transacciones con las instrucciones BEGIN TRANSACTION y COMMIT TRANSACTION.
✓ Determinar el número de transacciones activas al consultar la variable global @@trancount.
✓ Utilizar el procedimiento almacenado de sistema sp_lock y el sql Server management Studio para ver la informaciónde los bloqueos.
✓ Utilizar la instrucción SET TRANSACTION ISOLATION LEVEL para controlar el comportamiento de los bloqueos en el nivel de sesión.
✓ Utilizar las opciones de bloqueo de tabla para controlar el comportamiento de los bloqueos en tablas específicas.




2. Marco Teórico

Introducción a las transacciones y los bloqueos

✓ Las transacciones aseguran que variasmodificaciones a los datos se procesan juntas
✓ Los bloqueos impiden los conflictos de actualización
✓ El bloqueo es automático
✓ Los bloqueos permiten usar los datos al mismo tiempo
✓ Control de simultaneidad


Las transacciones utilizan los bloqueos para impedir que otros usuarios cambien o lean los datos de una transacción que no se ha completado. El bloqueo es necesarioen el Proceso de transacciones en línea (OLTP, Online Transaction Processing) en sistemas multiusuario. SQL Server utiliza el registro de transacciones para asegurar que las actualizaciones se han completado y son recuperables.


Transacciones
Las transacciones aseguran que varias modificaciones a los datos se procesan como una unidad; esto se conoce como atomicidad. Por ejemplo, unatransacción bancaria podría abonar en una cuenta y cargar en otra. Los dos pasos se deben completar al mismo tiempo. SQL Server acepta que el proceso de transacciones administre varias transacciones.

Bloqueos
Los bloqueos impiden los conflictos de actualización. Los usuarios no pueden leer o modificar los datos que están en proceso de modificación por parte de otros usuarios. Por ejemplo, si deseacalcular una función de agregado y asegurarse de que otra transacción no modifique el conjunto de datos que se utiliza para calcular la función de agregado, puede solicitar que el sistema establezca bloqueos en los datos. Tenga en cuenta los siguientes hechos acerca de los bloqueos:

✓ Los bloqueos hacen posible la serialización de transacciones de forma que sólo una persona a la vez puedamodificar un elemento de datos. Por ejemplo, en un sistema de reservas de una línea aérea los bloqueos aseguran que sólo se asigne un asiento concreto a una persona.
✓ SQL Server establece y ajusta dinámicamente el nivel de bloqueo apropiado durante una transacción. También se puede controlar manualmente cómo se utilizan algunos de los bloqueos.
✓ Los bloqueos son necesarios para que lastransacciones simultáneas permitan que los usuarios tengan acceso y actualicen los datos al mismo tiempo. La alta simultaneidad significa que hay varios usuarios que consiguen un buen tiempo de respuesta con pocos conflictos. Desde la perspectiva del administrador del sistema, los problemas principales son el número de usuarios, el número de transacciones y el rendimiento. Desde la perspectiva del usuario, lapreocupación principal es el tiempo de respuesta

Transacciones de SQL Server

En SQL Server hay dos clases de transacciones:

✓ En una transacción implícita, cada instrucción Transact-SQL, como INSERT, UPDATE o DELETE, se ejecuta como una transacción.
✓ En una transacción explícita o definida por el usuario, las instrucciones de la transacción se agrupan entre las cláusulas BEGINTRANSACTION y COMMIT TRANSACTION.

El usuario puede establecer un punto de almacenamiento, o marcador, en una transacción. Un punto de almacenamiento define una ubicación a la que puede volver una transacción si parte de la misma se cancela condicionalmente. La transacción debe continuar hasta que se complete o se deshaga en su totalidad.

Las transacciones de SQL Server emplean la sintaxis...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Transacciones En Sql
  • Transacciones distribuidas SQL
  • Manejo de transacciones y concurrencia en sql
  • asegurar transacciones en sql
  • Transacciones SQL
  • Transacciones SQL
  • transacciones sql
  • Transacciones en sql

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS