Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/02/2008, 23:13
Avatar de royrojas
royrojas
 
Fecha de Ingreso: diciembre-2004
Mensajes: 458
Antigüedad: 19 años, 4 meses
Puntos: 3
Re: Error de conectividad

pues del error que muestras ahi, lo importante es lo que dice:
"ROLLBACK TRANSACTION no tiene BEGIN TRANSACTION"

eso lo que te indica es que el programa esta intentando hacer un Rollback sin haber iniciado una transaccion valida.

Te explico:

Para evitar inconsistencias en la base de datos, SQL y otros motores de base de datos como Oracle, MySql, etc, permiten el manejo de transacciones.

Por ejemplo imaginate un sistema de facturacion, que tiene Maestro y Detalle, o Titulo de Factura y Detalle de Articulos, entonces antes de agregar el Header de la factura se abre una transaccion (BEGIN TRANSACTION), luego el header, luego el detalle y lal final se hace un commit a la transaccion (COMMIT TRANSACTION).
IMPORTANTE: si en algun punto entre el begin y el commit hay un error entonces se hace un Rollback Transaction, y ahi se elimina todo lo que he hiso hasta el punto del error., asi deja la base de datos con datos consistentes.

El problema que tienes es que hay algun error que se esta produciendo incluso antes de abrir la transaccion (BEGIN), entonces en el manejo del error (try catch) cuando intenta hacer un Rollback SQL no lo permite.

Creo que me di a entender, si no es asi me dices y te explico con mas detalle
__________________
roy rojas
Programación en Español: DotNetcr.com