El artículo en línea de MSDN " Aislamiento de instantáneas en SQL Server " establece:
- "Un nivel de aislamiento tiene un alcance para toda la conexión, y una vez configurado para una conexión con la instrucción SET TRANSACTION ISOLATION LEVEL, permanece vigente hasta que se cierre la conexión o se establezca otro nivel de aislamiento. Cuando una conexión se cierra y se devuelve al grupo , se retiene el nivel de aislamiento de la última instrucción SET TRANSACTION ISOLATION LEVEL . Las conexiones posteriores que reutilizan una conexión agrupada utilizan el nivel de aislamiento que estaba vigente en el momento en que se agrupa la conexión "
¿No es un párrafo autocontradictorio ("hasta" vs. "retenido")?
Luego, si " se retiene el nivel de aislamiento de la última instrucción SET TRANSACTION ISOLATION LEVEL " después de cerrar la conexión y devolverla a un grupo, cómo debe entenderse:
- que el nivel de aislamiento predeterminado tendrá un valor arbitrario (diferentes conexiones en el grupo tendrán diferentes niveles de aislamiento y su valor dependerá de la conexión que se vuelva a abrir)?
- o todos los valores predeterminados en todas las conexiones en el grupo se cambiarán a la última? pero de nuevo bastante desconocido de antemano?