2009-06-25 55 views

Respuesta

3

Para ADO.NET, no hay ninguna diferencia. Se establece implícitamente en MSDN donde para el objeto SqlTransaction se dice que el método Commit "falla si la transacción ya se ha retrotraído al servidor".

Además, SQL Server Profiler muestra "SET TRANSACTION ISOLATION LEVEL READ COMMITTED; BEGIN TRAN" tan pronto como ejecute .BeginTransaction en una conexión.

Para ADO (no .NET), sin embargo, no lo es. Eso solía permitir buenos escenarios con, de hecho, las transacciones anidadas (el servidor trans se anidaba dentro de las del cliente). A pesar de que lo he usado mucho, no puedo definir exactamente qué era una "transacción de cliente" en ese caso.

2

Si va a llamar a múltiples procesos almacenados en una fila y desea poder deshacer, entonces tiene que administrar la transacción desde su código utilizando SqlConnection.BeginTransaction(). De lo contrario, es lo mismo.

Cuestiones relacionadas