5
					
						
						« en: Martes 19 de Diciembre de 2006, 02:05 »
					 
					
					Mira Puedes usar el metodo que yo uso con ADO bajo VB6 
Primero tienes que importar las referencias ActiveX Data Object 2.6 o alguna otra yo uso esa
despues haces la conexion y lo pones en General o si la vas a usarla en todo el programa te sugiero en un modulo asi
Dim cn as new ADO.connection
cn.open "DSN=BASE" --> Yo uso siempre una conexion X medio del ODBC de Windows
Luego ubicas el bloque de codigo que va a contener un SQL ya sea Insert, Update o delete como por ejemplo:
Private sub Ingresar()
 On error goto Linea_Error
 Dim sql
 cn.BeginTransac --> no c si esta bien escrito, pero VB deberia mostrarte la lista procedimentos y metodos que dispone el objeto
 sql = "Insert into TABLA values ("01","CArlos")"
 cn.Execute(SQL)
 sql = "Insert into TABLA values ("02","Pedro")"
 cn.Execute(SQL)
 
 msgbox "Ingreso Completado"
 cn.CommitTransac --> Esto hace si todo salio bien
 Exit sub
 Linea_Error:
 msgbox "Error en el Ingreso"
 cn.RollBackTransac --> Si algo salio mal en la base no se inserta nada asi alla pasado por el primer Insert
end sub
Recuerda siempre lo siguiente:
1) Una transaccion debe cumplir con las propiedades ACID (Atomicidad, consistencia, Aislamiento y durabilidad)
2) Siempre que inicies una transaccion (BeginTransac) siempre debe terminar con (CommitTransac) o un (RollBackTransac) no mas no menos, siempre se ponen los tres
3) No puedes Iniciar una Transaccion en un procedimiento y terminarla en otro procedimiento o funcion debe ser en el mismo bloque de codigo si deseas abacar mas codigo inicias otra transaccion
Espero te sirvan esto consejos
Ojo: El codigo me lo invente en el momento
Cahuuuuuuu