Entiendo que, en una ventana de MS SQL Server Management Studio, después de hacer una "transacción de inicio" y luego hacer algunos cambios como agregar datos a una tabla, solo puede consultar esa tabla y esos cambios desde la misma ventana hasta que realice un "transacción de compromiso".
¿Hay alguna forma de hacer una consulta desde otra fuente antes de hacer la "transacción de confirmación"?
Específico para mi objetivo actual y para agregar algo de contexto. Hago algunas consultas SQL desde Excel Power Query. Realmente me gustaría poder hacer estas consultas antes de la "transacción de compromiso" para poder hacer un análisis y averiguar si debería hacer una reversión en lugar de un compromiso.
fuente
Como cuestión de mejores prácticas, las transacciones deben mantenerse lo más cortas posible y nunca esperar la interacción del usuario ; Cada vez que realiza algún tipo de modificación de datos o esquema dentro de una transacción, esto coloca bloqueos en los objetos o filas que se han tocado / modificado, lo que mantiene las consultas de otros usuarios en espera. Este turno puede crear efectos en cadena que pueden detener su servidor de base de datos.
En el escenario que está describiendo, le recomendaría que haga una copia de los datos para separar las tablas de "qué pasaría si" donde puede hacer sus modificaciones y revisar los resultados. Una vez que esté satisfecho con los resultados, use una transacción para fusionar los datos de esta tabla nuevamente en la (s) tabla (s) original (es).
fuente