Tengo dos bases de datos con las mismas tablas pero con diferentes datos en cada una. Necesito hacer consultas en una bd y estos registros poder insertarlos en la otra bd. Estoy utilizando DAO y creo que es la mejor forma, pero me da errores. Os agradecería mucho vuestra ayuda.
Ado Se agrega en proyecto referencias Microsoft activeX Data objects 2.6 Más o menos así //////////////////////////////////////////////// Public conexion_1 As ADODB.Connection ' conexion con la tabla que leemos Public conexion_2 As ADODB.Connection ' conexion con la tabla donde insertamos Public TClientes As New ADODB.Recordset ' recordset para leer Set conexion_1 = New ADODB.Connection ' conexion Set conexion_2 = New ADODB.Connection ' conexion ' realizamos conexión conexion_1.ConnectionString = "DSN=Ruta;User Id=TUID;PWD=TUPASSWORD;" ' con tabla que leemos conexion_1.Open ' realizamos conexión con tabla de insert conexion_2.ConnectionString = "DSN=Ruta;User Id=TUID;PWD=TUPASSWORD;" ' con tabla que escribimos conexion_2.Open ' ' recordset Set TClientes = New ADODB.Recordset ' abrimos recordset TClientes.Open "Select * from tabla", conexion_1, , adOpenDynamic ' leemos recordset If Not TClientes.EOF Then While Not TClientes.EOF ' montamos un insert para cada registro sqlx = "" sqlx = sqlx & " insert into tabla_destino (campo,campo)" sqlx = sqlx & " values (" sqlx = sqlx & "'" & TClientes("campo1") & "'," sqlx = sqlx & "'" & TClientes("campo1") & "')" Conexion_2.execute sqlx ' lo ejecuatmos TClientes. MoveNext ' leemos el siguiente Wend End If /////////////////////////////
Mejor utiliza ADO. Yo crearía dos conexiones, una con cada base de datos. Haría selects en una de las conexiones e inserts en la otra con los resultados de la select.