2010-08-09 17 views
6

Siempre he realizado transacciones desde procedimientos almacenados pero ahora necesito envolver un grupo de sentencias "dinámicas" ejecutadas desde código contra sp_executesql en una transacción.Transacciones de cliente Sql de código frente a transacciones controladas por base de datos

Específicamente necesito el nivel de aislamiento READ UNCOMMITED para estos en algunos casos (sé lo que hace, y sí, eso es lo que necesito). Esto es SQL2008.

Mi pregunta es la siguiente: Si utilizo el método de mi ejemplo SqlConnection BeginTransaction() con el nivel de aislamiento establecido en IsolationLevel.ReadUncommitted voluntad que tiene el mismo efecto que si ejecutó un procedimiento almacenado que tiene la declaración READ UNCOMMITED?

Respuesta

3

Sí, lo hará.

El SqlConnection utiliza el cliente nativo de SQL, y una llamada a BeginTransaction hace exactamente esto que se enviará al servidor:

SET TRANSACTION ISOLATION LEVEL <WHATEVER>; BEGIN TRANSACTION; 
+0

impresionante, gracias. – kprobst

Cuestiones relacionadas