Guardar datos en dos tablas mediante SQL

Tengo un subformulario Pagos con origen de datos en una tabla tbl_Pagos y quisiera guardar todos los registros de ese subformulario mediante sentencia sql en otra tabla que se denomina tbl_PagosGenerados. Tengo la siguiente sentencia:

dim dbs  As Database

dbs.Execute " INSERT INTO tbl_Pagos " _
& "SELECT * " _
& "FROM [tbl_PagosGenerado];"
Dbs. Close

Esta funciona solo con el registro marcado en el subformulario Pagos, cuando le doy a un boton que tengo en el formulario solo me guarda el registro que tenga yo activo en ese momento. ¿Cómo puedo guardar todos los registros que tengo en el subformulario, aunque no tenga activo ninguno?

1 Respuesta

Respuesta

Primero decirte que tus razones tendrás para duplicar datos de una tabla a otra, a bote pronto lógico no es.

La consulta que expones no solo debería copiar todos los registros de una tabla a otra, sino que además los debería copiar todos siempre, por lo que a mí entender estarías duplicando los registros continuamente, y si solo te copia el registro activo me da que algo falta en esta ecuación.

Me pillaste sin posibilidad de hacer una prueba, mañana con calma lo miro más a fondo.

El motivo erróneo o no es porque esa primera tabla solo la quiero utilizar como tabla temporal, en ella irán todos los pagos del cliente que yo seleccione, luego los pasaré a la tabla de cierre para llevar el recuento final, por ello quiero pasar todos los registros, no solo el activo, una vez los pase, con una sentencia DELETE, los borraré de esta tabla temporal.

Saludos

Siendo una tabla de paso no duplicarás los registros.

Te cuento, creo que el problema lo tienes con los nombres orgien y destino, ya que supongo que son iguales. Para solucionarlo, sin cambiar el nombre a la tabla origen o destino, has de referenciar los campos del SELECT nombrando la tabla.

Ejemplo:

INSERT INTO O_DESTINO ( CAMPO1 )
SELECT [O].CAMPO1
FROM ORIGEN AS O;

Prueba con esto a ver si te funciona.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas