Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/04/2008, 15:08
Avatar de Fann_Lavigne
Fann_Lavigne
 
Fecha de Ingreso: diciembre-2004
Mensajes: 622
Antigüedad: 20 años
Puntos: 12
SqlTransaction no parece Funcionar (CON SOLUCION)

Hola a todos,

Les platico lo que deseo hacer:

Tengo 2 tablas, la A y la B, en la tabla A se genera un ID autoconsecutivo que uso en la tabla B para referenciar los datos.

Lo que pretendo hacer es cuando se genere un registro en la tabla A, y solo si esta transaccion es Exitosa, entonces generar los registros en la tabla B usando el ID que se genero en la transaccion exitosa anterior, de lo contrario, no generar los registros en la tabla B.

Estaba usando lo siguiente:

Código:
cnx.Open()

        cmd = cnx.CreateCommand()

        Dim transaction As SqlTransaction
        transaction = cnx.BeginTransaction("CreateChart")
        cmd.Connection = cnx
        cmd.Transaction = transaction

        Try
            cmd.CommandText = "Insert Into A (Dato) Values('Algo')"
            cmd.ExecuteNonQuery()
            transaction.Commit()
            cnx.Close()
         Catch ex As Exception
            'Try
            '    transaction.Rollback("CreateChart")
            Me.lbl_Avisos.Text = " Ex Primer" & ex.Message
            'Catch ex2 As Exception
            '    Me.lbl_Avisos.Text = " Ex2 Primer" & ex2.Message
            'End Try
        End Try
Pero resulta ke al aunke la primera transaccion se genere, despues intenta hacer el Rollback como si esta hubiese fallado.

Espero me hayan entendido, en resumen, solo necesito que al completarse una transaccion, se ejecuten las demas, de lo contrario no pase algo.

saludos y gracias
__________________
"Entre Mas Brillante Es Una Mente, Tiene Que Luchar Contra Demonios Internos Mas Poderosos"
[email protected]

Última edición por Fann_Lavigne; 20/04/2008 a las 22:01