SlideShare una empresa de Scribd logo
TRANSACCIONES
DEFINICIÓN
Es una unidad única de trabajo. Si una transacción
tiene éxito, todas las modificaciones de los datos
realizadas durante la transacción se confirman y se
convierten en una parte permanente de la base de
datos.
Si una transacción encuentra errores y debe cancelarse
o revertirse, se borran todas las modificaciones de los
datos.
PROPIEDADES
 Atomicidad: Las operaciones que componen una transacción deben
considerarse como una sola.
 Consistencia: Una operación nunca deberá dejar datos inconsistentes. Una
transacción es una unidad de integridad porque mantiene la coherencia de los
datos, transformando un estado coherente de datos en otro estado de datos
igualmente coherente.
 Aislamiento: Los datos "sucios" deben estar aislados, y evitar que los usuarios
utilicen información que aún no está confirmada o validada. El aislamiento
requiere que parezca que cada transacción sea la única que manipula el
almacén de datos, aunque se puedan estar ejecutando otras transacciones al
mismo tiempo. Una transacción nunca debe ver las fases intermedias de otra
transacción.
 Durabilidad: Una vez completada la transacción los datos actualizados ya serán
permanentes y confirmados. Si una transacción se realiza satisfactoriamente, el
sistema garantiza que sus actualizaciones se mantienen, aunque el equipo falle
inmediatamente después de la confirmación.
TIPOS DE TRANSACCIONES
 De Confirmación Automática: El Gestor de Datos inicia una transacción
automáticamente por cada operación que actualice datos. De este modo mantiene
siempre la consistencia de la base de datos, aunque puede generar bloqueos.
 Implícitas: Cuando el Gestor de Datos comienza una transacción automáticamente
cada vez que se produce una actualización de datos, pero el que dicha transacción
se confirme o se deshaga, lo debe indicar el programador.
 Explícitas: Son las que iniciamos nosotros "a mano" mediante instrucciones SQL,
los programadores son los que indican qué operaciones va a abarcar. Cada
transacción se inicia explícitamente con la instrucción BEGIN TRANSACTION y se
termina explícitamente con una instrucción COMMIT o ROLLBACK.
 Transacciones de Ámbito de Lote: Una transacción implícita o explícita de
Transact-SQL que se inicia en una sesión de MARS (conjuntos de resultados
activos múltiples), que solo es aplicable a MARS, se convierte en una transacción
de ámbito de lote. Si no se confirma o revierte una transacción de ámbito de lote
cuando se completa el lote, SQL Server la revierte automáticamente.
COMANDOS
 A. BEGIN TRANSACTION: Marca el punto de inicio de una transacción explícita.
Representa un punto en el que los datos a los que hace referencia una conexión
son lógica y físicamente coherentes. Si se producen errores, se pueden revertir
todas las modificaciones realizadas en los datos después de BEGIN
TRANSACTION para devolver los datos al estado conocido de coherencia.
 B. COMMIT: Marca el final de una transacción explícita o de confirmación
automática. Esta instrucción hace que los cambios en la transacción se
confirmen permanentemente en la base de datos. La instrucción COMMIT es
idéntica a COMMIT WORK, COMMIT TRAN y COMMIT TRANSACTION.
 C. ROLLBACK: Revierte una transacción al principio de la misma. No se
confirman cambios para la transacción en la base de datos. La instrucción
ROLLBACK es idéntica a ROLLBACK WORK, ROLLBACK TRAN y ROLLBACK
TRANSACTION.
EJEMPLO
Trabajaremos con la base de datos Northwind en nuestros ejemplos.
Vamos a realizar una transacción que modifica el precio de dos
productos de la base de datos.
USE NorthWind
DECLARE @Error int
--Declaramos una variable que utilizaremos para almacenar un
posible código de error
BEGIN TRAN
--Iniciamos la transacción
UPDATE Products SET UnitPrice=20 WHERE ProductName ='Chai'
--Ejecutamos la primera sentencia
SET @Error=@@ERROR
--Si ocurre un error almacenamos su código en @Error
--y saltamos al trozo de código que deshara la transacción. Si, eso de
ahí es un
--GOTO, el demonio de los programadores, pero no pasa nada por
usarlo
--cuando es necesario
IF (@Error<>0) GOTO TratarError
--Si la primera sentencia se ejecuta con éxito, pasamos a la segunda
UPDATE Products SET UnitPrice=20 WHERE ProductName='Chang'
SET @Error=@@ERROR
--Y si hay un error hacemos como antes
IF (@Error<>0) GOTO TratarError
--Si llegamos hasta aquí es que los dos UPDATE se han completado
con
--éxito y podemos "guardar" la transacción en la base de datos
COMMIT TRAN
TratarError:
--Si ha ocurrido algún error llegamos hasta aquí
If @@Error<>0 THEN
BEGIN
PRINT 'Ha ecorrido un error. Abortamos la transacción'
--Se lo comunicamos al usuario y deshacemos la transacción
--todo volverá a estar como si nada hubiera ocurrido
ROLLBACK TRAN
END
CONCLUSIONES
 Es difícil imaginar hoy en día la concentración de
información sin base de datos, las pequeñas o grandes
industrias tienen como base de su sistema informático la
construcción de base de datos con la que podemos tener
gran versatilidad con cualquier tipo de equipos.
 La seguridad en las bases de datos es muy importante
debido a que garantiza la integridad física y lógica de los
datos.
Transacciones

Más contenido relacionado

La actualidad más candente

Tarea
TareaTarea
Errores
ErroresErrores
Errores
Laura Hdz M
 
Presentación1
Presentación1Presentación1
Presentación1
Royer Lopez Nuñez
 
Error y estabilidad
Error y estabilidadError y estabilidad
Error y estabilidad
Onebri Josue Maurera Alvarado
 
ESTADOS DE PROCESOS EN UN CPU
ESTADOS DE PROCESOS EN UN CPUESTADOS DE PROCESOS EN UN CPU
ESTADOS DE PROCESOS EN UN CPU
jorgeleo22
 
Toma de decisiones If Else
Toma de decisiones If ElseToma de decisiones If Else
Toma de decisiones If Else
compumet sac
 
Alexander power point
Alexander power pointAlexander power point
Alexander power point
20081027
 
Manejo de transaccones
Manejo de transacconesManejo de transaccones
Manejo de transaccones
EIYSC
 
Prepared Statement
Prepared StatementPrepared Statement
Prepared Statement
Rosaliny yonely rivera salazar
 
Algoritmosenpseudocdigo
AlgoritmosenpseudocdigoAlgoritmosenpseudocdigo
Algoritmosenpseudocdigo
Luis Fernando
 
Algoritmos en pseudocódigo
Algoritmos en pseudocódigoAlgoritmos en pseudocódigo
Algoritmos en pseudocódigo
Luis Fernando
 
Controlador pid
Controlador pidControlador pid
Controlador pid
Luis Casimiro Ichuta
 

La actualidad más candente (12)

Tarea
TareaTarea
Tarea
 
Errores
ErroresErrores
Errores
 
Presentación1
Presentación1Presentación1
Presentación1
 
Error y estabilidad
Error y estabilidadError y estabilidad
Error y estabilidad
 
ESTADOS DE PROCESOS EN UN CPU
ESTADOS DE PROCESOS EN UN CPUESTADOS DE PROCESOS EN UN CPU
ESTADOS DE PROCESOS EN UN CPU
 
Toma de decisiones If Else
Toma de decisiones If ElseToma de decisiones If Else
Toma de decisiones If Else
 
Alexander power point
Alexander power pointAlexander power point
Alexander power point
 
Manejo de transaccones
Manejo de transacconesManejo de transaccones
Manejo de transaccones
 
Prepared Statement
Prepared StatementPrepared Statement
Prepared Statement
 
Algoritmosenpseudocdigo
AlgoritmosenpseudocdigoAlgoritmosenpseudocdigo
Algoritmosenpseudocdigo
 
Algoritmos en pseudocódigo
Algoritmos en pseudocódigoAlgoritmos en pseudocódigo
Algoritmos en pseudocódigo
 
Controlador pid
Controlador pidControlador pid
Controlador pid
 

Similar a Transacciones

TRANSACCIONES
TRANSACCIONESTRANSACCIONES
TRANSACCIONES
Lisbeth Ocaña Bueno
 
Transacciones
TransaccionesTransacciones
Transacciones
Sandrita Rafael Estela
 
Transacciones en SQL SERVER
Transacciones en SQL SERVERTransacciones en SQL SERVER
Transacciones en SQL SERVER
Jaime Aguilar Rafael
 
Transacciones en transact sql
Transacciones en transact sqlTransacciones en transact sql
Transacciones en transact sql
Freddy Poma Inga
 
Gestion de transacciones "Investigación"
Gestion de transacciones "Investigación"Gestion de transacciones "Investigación"
Gestion de transacciones "Investigación"
UNIVERSIDAD VERACRUZANA
 
Transacciones
TransaccionesTransacciones
Transaccion
TransaccionTransaccion
Transaccion
Alberto Torres
 
Transaciones en mysql
Transaciones en mysqlTransaciones en mysql
Transaciones en mysql
Josafat Aguilar Olivares
 
Transacciones.pptx julio
Transacciones.pptx julioTransacciones.pptx julio
Transacciones.pptx julio
Julio Miron Carrillo
 
Transacciones.pptx julio
Transacciones.pptx julioTransacciones.pptx julio
Transacciones.pptx julio
Julio Miron Carrillo
 
Transacciones base de datos
Transacciones base de datosTransacciones base de datos
Transacciones base de datos
Jose Musett
 
Gestion de transacciones
Gestion de transaccionesGestion de transacciones
Gestion de transacciones
Patricia Flores
 
transaction-management
transaction-managementtransaction-management
transaction-management
Shami Zama
 
Tarea
TareaTarea
Transacciones
TransaccionesTransacciones
Transacciones
Gloria Sosa Vera
 
Transaccion
TransaccionTransaccion
Transaccion
Jorge Mengelle
 
Diseño & Procesamiento de transacciones
Diseño & Procesamiento de transaccionesDiseño & Procesamiento de transacciones
Diseño & Procesamiento de transacciones
Blanca Parra
 
Consistencia es un término más amplio que el de integridad
Consistencia es un término más amplio que el de integridadConsistencia es un término más amplio que el de integridad
Consistencia es un término más amplio que el de integridad
Angel Sanchez Virgen
 
Administración de Transacciones - del tema 1 al 4
Administración de Transacciones - del tema 1 al 4Administración de Transacciones - del tema 1 al 4
Administración de Transacciones - del tema 1 al 4
Mayito Pdg
 
BD: Cuestiones de Repaso del Capitulo 20.
BD: Cuestiones de Repaso del Capitulo 20.BD: Cuestiones de Repaso del Capitulo 20.
BD: Cuestiones de Repaso del Capitulo 20.
Victor Samaniego
 

Similar a Transacciones (20)

TRANSACCIONES
TRANSACCIONESTRANSACCIONES
TRANSACCIONES
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Transacciones en SQL SERVER
Transacciones en SQL SERVERTransacciones en SQL SERVER
Transacciones en SQL SERVER
 
Transacciones en transact sql
Transacciones en transact sqlTransacciones en transact sql
Transacciones en transact sql
 
Gestion de transacciones "Investigación"
Gestion de transacciones "Investigación"Gestion de transacciones "Investigación"
Gestion de transacciones "Investigación"
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Transaccion
TransaccionTransaccion
Transaccion
 
Transaciones en mysql
Transaciones en mysqlTransaciones en mysql
Transaciones en mysql
 
Transacciones.pptx julio
Transacciones.pptx julioTransacciones.pptx julio
Transacciones.pptx julio
 
Transacciones.pptx julio
Transacciones.pptx julioTransacciones.pptx julio
Transacciones.pptx julio
 
Transacciones base de datos
Transacciones base de datosTransacciones base de datos
Transacciones base de datos
 
Gestion de transacciones
Gestion de transaccionesGestion de transacciones
Gestion de transacciones
 
transaction-management
transaction-managementtransaction-management
transaction-management
 
Tarea
TareaTarea
Tarea
 
Transacciones
TransaccionesTransacciones
Transacciones
 
Transaccion
TransaccionTransaccion
Transaccion
 
Diseño & Procesamiento de transacciones
Diseño & Procesamiento de transaccionesDiseño & Procesamiento de transacciones
Diseño & Procesamiento de transacciones
 
Consistencia es un término más amplio que el de integridad
Consistencia es un término más amplio que el de integridadConsistencia es un término más amplio que el de integridad
Consistencia es un término más amplio que el de integridad
 
Administración de Transacciones - del tema 1 al 4
Administración de Transacciones - del tema 1 al 4Administración de Transacciones - del tema 1 al 4
Administración de Transacciones - del tema 1 al 4
 
BD: Cuestiones de Repaso del Capitulo 20.
BD: Cuestiones de Repaso del Capitulo 20.BD: Cuestiones de Repaso del Capitulo 20.
BD: Cuestiones de Repaso del Capitulo 20.
 

Más de Magaly Portocarrero Labajos

Mineria de datos
Mineria de datosMineria de datos
Mineria de datos
Magaly Portocarrero Labajos
 
Administracion de la seguridad
Administracion de la seguridadAdministracion de la seguridad
Administracion de la seguridad
Magaly Portocarrero Labajos
 
Trigger - Activadores
Trigger - ActivadoresTrigger - Activadores
Trigger - Activadores
Magaly Portocarrero Labajos
 
Cursores
CursoresCursores
Procedimientos Almacenados
Procedimientos AlmacenadosProcedimientos Almacenados
Procedimientos Almacenados
Magaly Portocarrero Labajos
 
Vistas
VistasVistas
Comandos DDL
Comandos DDLComandos DDL
Lenguaje Transact SQL
Lenguaje Transact SQLLenguaje Transact SQL
Lenguaje Transact SQL
Magaly Portocarrero Labajos
 
PreparedStatement
PreparedStatementPreparedStatement
PreparedStatement
Magaly Portocarrero Labajos
 
J table con base de datos
J table con base de datosJ table con base de datos
J table con base de datos
Magaly Portocarrero Labajos
 
Resulset
Resulset Resulset
Dispositivas de la clase statement
Dispositivas de la clase statementDispositivas de la clase statement
Dispositivas de la clase statement
Magaly Portocarrero Labajos
 
CONNECTION
CONNECTIONCONNECTION
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
Magaly Portocarrero Labajos
 
Diapositiva java
Diapositiva javaDiapositiva java
Diapositiva java
Magaly Portocarrero Labajos
 
Diapositivas del jdbc magaly y duyen
Diapositivas del jdbc magaly y duyenDiapositivas del jdbc magaly y duyen
Diapositivas del jdbc magaly y duyen
Magaly Portocarrero Labajos
 

Más de Magaly Portocarrero Labajos (16)

Mineria de datos
Mineria de datosMineria de datos
Mineria de datos
 
Administracion de la seguridad
Administracion de la seguridadAdministracion de la seguridad
Administracion de la seguridad
 
Trigger - Activadores
Trigger - ActivadoresTrigger - Activadores
Trigger - Activadores
 
Cursores
CursoresCursores
Cursores
 
Procedimientos Almacenados
Procedimientos AlmacenadosProcedimientos Almacenados
Procedimientos Almacenados
 
Vistas
VistasVistas
Vistas
 
Comandos DDL
Comandos DDLComandos DDL
Comandos DDL
 
Lenguaje Transact SQL
Lenguaje Transact SQLLenguaje Transact SQL
Lenguaje Transact SQL
 
PreparedStatement
PreparedStatementPreparedStatement
PreparedStatement
 
J table con base de datos
J table con base de datosJ table con base de datos
J table con base de datos
 
Resulset
Resulset Resulset
Resulset
 
Dispositivas de la clase statement
Dispositivas de la clase statementDispositivas de la clase statement
Dispositivas de la clase statement
 
CONNECTION
CONNECTIONCONNECTION
CONNECTION
 
Java con base de datos
Java con base de datosJava con base de datos
Java con base de datos
 
Diapositiva java
Diapositiva javaDiapositiva java
Diapositiva java
 
Diapositivas del jdbc magaly y duyen
Diapositivas del jdbc magaly y duyenDiapositivas del jdbc magaly y duyen
Diapositivas del jdbc magaly y duyen
 

Último

PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptxPRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
brandonsinael
 
Infografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdfInfografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdf
Carlos Pulido
 
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdfFICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
jesus869159
 
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdfEXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
hugodennis88
 
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdfMETRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
Augusto César Dávila Callupe
 
Ducto Barras para instalaciones electricas
Ducto Barras para instalaciones electricasDucto Barras para instalaciones electricas
Ducto Barras para instalaciones electricas
Edgar Najera
 
Infografía de operaciones básicas....pdf
Infografía de operaciones básicas....pdfInfografía de operaciones básicas....pdf
Infografía de operaciones básicas....pdf
jahirrtorresa
 
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docxINFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
LuzdeFatimaCarranzaG
 
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCECOMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
jhunior lopez rodriguez
 
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptxINVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
FernandoRodrigoEscal
 
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomomRinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
DanielaLoaeza5
 
simbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspecciónsimbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspección
HarofHaro
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
yamilbailonw
 
chancadoras.............................
chancadoras.............................chancadoras.............................
chancadoras.............................
ssuser8827cb1
 
Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.
MaraManuelaUrribarri
 
Aletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdfAletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdf
elsanti003
 
PPT suelos ensayo Proctor - laboratorio 4.pdf
PPT suelos ensayo Proctor - laboratorio 4.pdfPPT suelos ensayo Proctor - laboratorio 4.pdf
PPT suelos ensayo Proctor - laboratorio 4.pdf
EgorRamos1
 
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTOOPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
GERARDO GONZALEZ
 
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICAPRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
carmenquintana18
 
Infografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - ConstrucciónInfografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - Construcción
MaraManuelaUrribarri
 

Último (20)

PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptxPRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
 
Infografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdfInfografía operaciones básicas construcción .pdf
Infografía operaciones básicas construcción .pdf
 
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdfFICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
FICHA TECNICA PRODUCTOS CONGELADOS EMBALAJE.pdf
 
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdfEXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
 
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdfMETRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
 
Ducto Barras para instalaciones electricas
Ducto Barras para instalaciones electricasDucto Barras para instalaciones electricas
Ducto Barras para instalaciones electricas
 
Infografía de operaciones básicas....pdf
Infografía de operaciones básicas....pdfInfografía de operaciones básicas....pdf
Infografía de operaciones básicas....pdf
 
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docxINFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
INFORME DE LABORATORIO MECANICA DE FLUIDOS (1).docx
 
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCECOMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
COMPARACION DE PRECIOS TENIENDO COMO REFERENTE LA OSCE
 
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptxINVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
 
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomomRinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
 
simbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspecciónsimbologia y normas de soldadura para su inspección
simbologia y normas de soldadura para su inspección
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
 
chancadoras.............................
chancadoras.............................chancadoras.............................
chancadoras.............................
 
Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.Las operaciones básicas en la construcción.
Las operaciones básicas en la construcción.
 
Aletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdfAletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdf
 
PPT suelos ensayo Proctor - laboratorio 4.pdf
PPT suelos ensayo Proctor - laboratorio 4.pdfPPT suelos ensayo Proctor - laboratorio 4.pdf
PPT suelos ensayo Proctor - laboratorio 4.pdf
 
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTOOPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
 
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICAPRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
PRIMERA Y SEGUNDA LEY DE LA TERMODINÁMICA
 
Infografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - ConstrucciónInfografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - Construcción
 

Transacciones

  • 2. DEFINICIÓN Es una unidad única de trabajo. Si una transacción tiene éxito, todas las modificaciones de los datos realizadas durante la transacción se confirman y se convierten en una parte permanente de la base de datos. Si una transacción encuentra errores y debe cancelarse o revertirse, se borran todas las modificaciones de los datos.
  • 3. PROPIEDADES  Atomicidad: Las operaciones que componen una transacción deben considerarse como una sola.  Consistencia: Una operación nunca deberá dejar datos inconsistentes. Una transacción es una unidad de integridad porque mantiene la coherencia de los datos, transformando un estado coherente de datos en otro estado de datos igualmente coherente.  Aislamiento: Los datos "sucios" deben estar aislados, y evitar que los usuarios utilicen información que aún no está confirmada o validada. El aislamiento requiere que parezca que cada transacción sea la única que manipula el almacén de datos, aunque se puedan estar ejecutando otras transacciones al mismo tiempo. Una transacción nunca debe ver las fases intermedias de otra transacción.  Durabilidad: Una vez completada la transacción los datos actualizados ya serán permanentes y confirmados. Si una transacción se realiza satisfactoriamente, el sistema garantiza que sus actualizaciones se mantienen, aunque el equipo falle inmediatamente después de la confirmación.
  • 4. TIPOS DE TRANSACCIONES  De Confirmación Automática: El Gestor de Datos inicia una transacción automáticamente por cada operación que actualice datos. De este modo mantiene siempre la consistencia de la base de datos, aunque puede generar bloqueos.  Implícitas: Cuando el Gestor de Datos comienza una transacción automáticamente cada vez que se produce una actualización de datos, pero el que dicha transacción se confirme o se deshaga, lo debe indicar el programador.  Explícitas: Son las que iniciamos nosotros "a mano" mediante instrucciones SQL, los programadores son los que indican qué operaciones va a abarcar. Cada transacción se inicia explícitamente con la instrucción BEGIN TRANSACTION y se termina explícitamente con una instrucción COMMIT o ROLLBACK.  Transacciones de Ámbito de Lote: Una transacción implícita o explícita de Transact-SQL que se inicia en una sesión de MARS (conjuntos de resultados activos múltiples), que solo es aplicable a MARS, se convierte en una transacción de ámbito de lote. Si no se confirma o revierte una transacción de ámbito de lote cuando se completa el lote, SQL Server la revierte automáticamente.
  • 5. COMANDOS  A. BEGIN TRANSACTION: Marca el punto de inicio de una transacción explícita. Representa un punto en el que los datos a los que hace referencia una conexión son lógica y físicamente coherentes. Si se producen errores, se pueden revertir todas las modificaciones realizadas en los datos después de BEGIN TRANSACTION para devolver los datos al estado conocido de coherencia.  B. COMMIT: Marca el final de una transacción explícita o de confirmación automática. Esta instrucción hace que los cambios en la transacción se confirmen permanentemente en la base de datos. La instrucción COMMIT es idéntica a COMMIT WORK, COMMIT TRAN y COMMIT TRANSACTION.  C. ROLLBACK: Revierte una transacción al principio de la misma. No se confirman cambios para la transacción en la base de datos. La instrucción ROLLBACK es idéntica a ROLLBACK WORK, ROLLBACK TRAN y ROLLBACK TRANSACTION.
  • 6. EJEMPLO Trabajaremos con la base de datos Northwind en nuestros ejemplos. Vamos a realizar una transacción que modifica el precio de dos productos de la base de datos. USE NorthWind DECLARE @Error int --Declaramos una variable que utilizaremos para almacenar un posible código de error BEGIN TRAN --Iniciamos la transacción UPDATE Products SET UnitPrice=20 WHERE ProductName ='Chai'
  • 7. --Ejecutamos la primera sentencia SET @Error=@@ERROR --Si ocurre un error almacenamos su código en @Error --y saltamos al trozo de código que deshara la transacción. Si, eso de ahí es un --GOTO, el demonio de los programadores, pero no pasa nada por usarlo --cuando es necesario IF (@Error<>0) GOTO TratarError --Si la primera sentencia se ejecuta con éxito, pasamos a la segunda UPDATE Products SET UnitPrice=20 WHERE ProductName='Chang' SET @Error=@@ERROR --Y si hay un error hacemos como antes IF (@Error<>0) GOTO TratarError --Si llegamos hasta aquí es que los dos UPDATE se han completado con --éxito y podemos "guardar" la transacción en la base de datos COMMIT TRAN
  • 8. TratarError: --Si ha ocurrido algún error llegamos hasta aquí If @@Error<>0 THEN BEGIN PRINT 'Ha ecorrido un error. Abortamos la transacción' --Se lo comunicamos al usuario y deshacemos la transacción --todo volverá a estar como si nada hubiera ocurrido ROLLBACK TRAN END
  • 9. CONCLUSIONES  Es difícil imaginar hoy en día la concentración de información sin base de datos, las pequeñas o grandes industrias tienen como base de su sistema informático la construcción de base de datos con la que podemos tener gran versatilidad con cualquier tipo de equipos.  La seguridad en las bases de datos es muy importante debido a que garantiza la integridad física y lógica de los datos.