Tip:
Highlight text to annotate it
X
Se trata de ver cómo ejecutar los ejercicios de la sesión de transacciones en SQL Server.
En moodle, en "transacciones práctico", tenemos los enunciados y la mayoría de ellos se muestra
en forma de una tabla que da la idea de 2 transacciones que se van a ejecutar simultáneamente.
Nos conectamos al servidor SQL Server, abrimos una consulta y preparamos la base de datos.
En principio vamos a trabajar con 2 tablas, "trantest" y "trantest2", básicamente con
la primera.
Tenemos que asegurarnos de que disponemos de la base de datos "ventas", si no la creamos,
y simplemente ejecutamos.
Ya tenemos las dos tablas y ahora sí que podemos ir a uno de los ejercicios, vamos
al ejercicio "2a1",
seleccionamos la parte correspondiente a la primera consulta,
copiamos,
y pegamos,
y si queremos ponemos una marca para acordarnos de hasta donde vamos a tener que hacer la
primera ejecución.
Continuamos con lo que sería la consulta A, terminamos de pegar.
Y ahora abrimos una nueva consulta, organizamos un poco las ventanas, hacemos un poco de sitio.
En esta segunda consulta iría la segunda transacción,
y para ello copiamos el texto correspondiente,
lo pegamos.
La razón de estructurar esto de esta manera es que vamos a ejecutar diversas transacciones
simultáneas entre las dos consultas que comparten datos, y vamos a ver cómo afectan las unas
a las otras.
Vamos a ejecutar por partes cada una de las consultas.
En esta primera seleccionamos y ejecutamos. Con esto conseguimos ejecutar nada más que
lo que está seleccionado.
Se preparan las tablas con los datos y las primeras líneas de la transacción.
Nos vamos a la segunda consulta. También lo mismo, seleccionamos el primer trozo, lo
ejecutamos.
Vemos el resultado de la ejecución de la segunda.
Ahora terminamos con la primera transacción, que en este caso es revertir la inserción
hecha antes.
Y ahora nos vamos a la segunda transacción, finalizamos también, y en este caso vemos
cuál ha sido el resultado de la interacción entre las dos transacciones simultáneas.