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