Departamento de Ciencias Computacionales
División de
Electrónica y Computación
Materia:
Taller de Administración de Bases de Datos
Clave-CC313 Sección-D01
Profesor:
Pérez Torres Griselda
Nombre:
García Meza Víctor Hugo
Código-
211219845
A.- Son
operaciones especiales con cierto carácter de concurrencia donde los cambios en
la base de datos se ven reflejados dependiendo de ciertas condiciones de lo
contrario se revierten tales acciones.
B.- La
transacción es un conjunto de instrucciones la cual tiene que realizar todas
sus instrucciones o ninguna de ellas, teniendo esta definición también se puede
decir que la transacción es una unidad lógica de trabajo.
Diapositiva 3
¿Cuáles son las características?
A.- Atomicidad: Propiedad que
se asegura si una operación se realizó o no.
Consistencia: la propiedad que asegura que sólo se
iniciará con aquello que se puede terminarAislamiento: propiedad que asegura que una operación
no puede afectar a otras.Durabilidad: propiedad que asegura que una vez
realizada la operación, no se podrá deshacer aunque falle el sistema.
B.- En bases de datos se denomina ACID a las
características de los parámetros que permiten clasificar las transacciones de
los sistemas de gestión de bases de datos.
• Atomicidad: Si una operación
consiste en una serie de pasos, todos ellos ocurren o ninguno, es decir, las
transacciones son completas.
• Consistencia: Integridad. Es
la propiedad que asegura que sólo se empieza aquello que se puede acabar
• Aislamiento: es la propiedad
que asegura que una operación no puede afectar a otras.
• Durabilidad: Persistencia.
Es la propiedad que asegura que una vez realizada la operación, ésta persistirá
y no se podrá deshacer aunque falle el sistema y que de esta forma los datos
sobrevivan de alguna manera.
Diapositiva 4
¿Cuáles son las transacciones?
A.- BEGIN TRAIN:
le indica al gestor de base de datos que en este punto se iniciara una nueva
transacción; COMMIT TRANSACTION: le indica al gestor de la base de datos que la
transacción se terminó correctamente y cambia el estado de los datos. De manera
permanente; ROLLBACK TRANSACTION: le indica a el gestor de base de datos que
hay errores en la transacción por lo que los datos que habían sufrido cambios
vuelven a su estado antes de que la transacción entrara en acción.
B.-BEGINTRAN
inicia una nueva transacción.COMMIT TRAN confirma la transacción actual, por lo
que sus cambios sean permanentes.ROLLBACK TRAN deshace la transacción actual,
cancelar sus cambios.
Diapositiva 5
Ejemplos de transacciones
A.- En la compra por ejemplo de
determinado número de existencia de boletos para un evento artístico. Aquí es necesaria
y muy evidente la utilización de las transacciones
B.- Un ejemplo de transacción
podría ser una transacción bancaria, mediante internet se puede hacer el
traspaso de dinero de una cuenta a otra, es un método común en la actualidad.
Diapositiva 6
COMMIT
Hace que todas las modificaciones
efectuadas sobre los datos desde el inicio de la transacción sean parte
permanente de la base de datos, libera los recursos mantenidos por la
transacción.
Sintaxis
COMMIT [ {
TRAN | TRANSACTION } [ transaction_name | tran_name_variable ] ] [ WITH (
DELAYED_DURABILITY = { OFF | ON } ) ]
[ ; ]
Revierte una
transacción explícita o implícita hasta el inicio de la transacción o hasta un
punto de retorno dentro de la transacción. Puede
usar ROLLBACK TRANSACTION para borrar todas las modificaciones de datos realizadas
desde el inicio de la transacción o hasta un punto de retorno. También libera los recursos que mantiene la
transacción.
Sintaxis
ROLLBACK { TRAN | TRANSACTION }
[
transaction_name | tran_name_variable
|
savepoint_name | savepoint_variable ] [ ; ]
Crea un punto de almacenamiento para la
transacción. El ensamblado que contiene esta clase tiene una relación de
confianza con SQLAccess.dll. Está diseñado para ser utilizado por SQL Server.
Para otras bases de datos, utilice el mecanismo de host proporcionado por esa
base de datos.
SINTAXIS MustOverride Sub CreateTransactionSavePoint(ByVal transactionId As Long, ByVal name As String, ByVal eventSink As SmiEventSink)