Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Copiar datos automáticamente de una tabla a otra al ingresar nuevo registro

Estas en el tema de Copiar datos automáticamente de una tabla a otra al ingresar nuevo registro en el foro de PHP en Foros del Web. Hola chic@s... tengo el siguiente dilema en una BD tengo una tabla "origen" donde periódicamente se van recibiendo datos... Me gustaría saber si es posible, ...
  #1 (permalink)  
Antiguo 03/02/2016, 03:05
 
Fecha de Ingreso: abril-2015
Mensajes: 45
Antigüedad: 9 años
Puntos: 0
Copiar datos automáticamente de una tabla a otra al ingresar nuevo registro

Hola chic@s... tengo el siguiente dilema en una BD tengo una tabla "origen" donde periódicamente se van recibiendo datos...
Me gustaría saber si es posible, y cómo, cada vez que se reciba un nuevo registro, que éste se copie a otra tabla "destino1" o "destino2" en función de un cierto valor "tipo" de los datos recibidos...
La pregunta es...¿tengo que hacer un php? ¿o se puede automatizar algo en mysql para copiar automáticamente?
EL segundo caso lo dudo que se pueda... en el primero... las sentencias mysql las tengo claras, pero cómo consigo automatizar esa tarea? ¿Un php que se ejecute automáticamente cada x tiempo y lea la tabla "origen" a ver si hay nuevos registros y los copie? ¿Esto no ralentizaría la respuesta del servidor?
¿Hay alguna otra forma de que se ejecute el php que copia de una tabla a otra sin necesidad de ejecutarlo cada x tiempo, y sólo cuando reciba algún dato nuevo la tabla "origen"?
Saludos.
  #2 (permalink)  
Antiguo 03/02/2016, 05:26
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Copiar datos automáticamente de una tabla a otra al ingresar nuevo registr

ok das para adelante y para atrás, la pregunta es si necesitas que sea automático o cada cierto tiempo o si necesita que sea automático cada vez que ingrese un nuevo dato, porque si es la segunda eso lo haces en la misma query que realiza la inserción del registro, es allí donde debes comprobar el valor de cierto tipo que mencionas y proceder con el registro en una u otra tabla y si es automático cada cierto tiempo, debes hacer un cron job en su server que realice la tarea cada tanto.
__________________
[email protected]
HITCEL
  #3 (permalink)  
Antiguo 03/02/2016, 05:53
 
Fecha de Ingreso: abril-2015
Mensajes: 45
Antigüedad: 9 años
Puntos: 0
Respuesta: Copiar datos automáticamente de una tabla a otra al ingresar nuevo registr

En el query no lo puedo hacer ya que los datos no se ingresan desde una web, sino desde un programa que envía los datos cada vez que hay disponibles, por lo que el query no lo controlo.

¿A qué te refieres con "hacer un cron job en el servidor"?
¿Se puede automatizar la tarea desde el servidor? ¿Cómo?
  #4 (permalink)  
Antiguo 03/02/2016, 06:57
 
Fecha de Ingreso: septiembre-2003
Mensajes: 140
Antigüedad: 20 años, 7 meses
Puntos: 2
Respuesta: Copiar datos automáticamente de una tabla a otra al ingresar nuevo registr

Puedes hacer algo manual un poco chapucero en PHP pero funcional. A falta de poder meter mano a la aplicación que nos comentas. Doy por hecho que los registros memorizan una fecha.

1 - Extraes la suma de, por ejemplo, los IDs de los registros de la tabla origen en la fecha más reciente.
1 - Extraes la suma de los IDs de los registros de la tabla destino en la fecha más reciente.
3 - Comparas las sumas, y si la de origen es mayor que la de destino, ya sabes que hay registros nuevos en ese dia.

Habría que ver cada cuanto se comprueba par afinar, claro.
  #5 (permalink)  
Antiguo 03/02/2016, 10:07
 
Fecha de Ingreso: diciembre-2015
Mensajes: 529
Antigüedad: 8 años, 4 meses
Puntos: 39
Respuesta: Copiar datos automáticamente de una tabla a otra al ingresar nuevo registr

Un cron job es una tarea automatizada que la mayoría de servidores deben traer, básicamente es código que deseas que repita cada cierto tiempo, si como nos comentas no controlas el flujo del ingreso de datos. Puedes poner en la cron que al final del día copie en dicha tabla todos los registros entre algun rango que los separe, fecha, hora, o algo así

Etiquetas: mysql, registro, tabla
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 22:44.