Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

aplicacion correcta de transacciones SQL

Estas en el tema de aplicacion correcta de transacciones SQL en el foro de Visual Basic clásico en Foros del Web. bueno pues tengo esta duda: en mi aplicacion tengo que agregar datos a 2 tablas de una base de datos en SQL, el problema es ...
  #1 (permalink)  
Antiguo 11/07/2005, 10:00
 
Fecha de Ingreso: septiembre-2004
Mensajes: 21
Antigüedad: 19 años, 7 meses
Puntos: 0
aplicacion correcta de transacciones SQL

bueno pues tengo esta duda:

en mi aplicacion tengo que agregar datos a 2 tablas de una base de datos en
SQL, el problema es que no se cual es la manera correcta de hacerlo, aver si me explico mejor con codigo.

Esta es una opcion:

dim SQL as string

SQL = "INSERT INTO Tabla1 (Campo1,Campo2) VALUES ('1','2')"
cn.BeginTrans
cn.execute SQL
cn.CommitTrans

SQL = "INSERT INTO Tabla2 (Campo1,Campo2) VALUES ('1','2')"
cn.BeginTrans
cn.execute SQL
cn.CommitTrans



Esta es otra opcion:

dim SQL as string
cn.BeginTrans
SQL = "INSERT INTO Tabla1 (Campo1,Campo2) VALUES ('1','2')"
cn.execute SQL
SQL = "INSERT INTO Tabla2 (Campo1,Campo2) VALUES ('1','2')"
cn.execute SQL
cn.commitTrans




cual es la manera correcta de usar las transacciones ?????
  #2 (permalink)  
Antiguo 11/07/2005, 10:58
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
las dos estan correctas por que unico que cambias el punto en cual haces la asignación del valor de la variable..

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #3 (permalink)  
Antiguo 12/07/2005, 14:22
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Eje!!! que paso compañero GeoAvila.... la correcta es la segunda... la primera va a arrojar un error en la ejecución del segundo commit ya que no hay ninguna transacción activa... ya que la transacción se terminó cuando se ejecutó el primer commit...

Lo correcto es hacer un BeginTrans y ejecutar todos los insert, update y delete y al final hacer el commit... y si hay un error (ON ERROR GO TO... que no lo puso) irse
por el rollback... así se ejecutará todo o nada. Si estoy equivocado corrigeme por favor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:48.