Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Crear tablas como historial

Estas en el tema de Crear tablas como historial en el foro de Mysql en Foros del Web. Buenos días. La idea es crear una tabla con el movimiento de otra por ejemplo, en la tabla empleados cambio a un empleado de area ...
  #1 (permalink)  
Antiguo 30/06/2011, 09:51
Avatar de germancerda  
Fecha de Ingreso: mayo-2008
Mensajes: 43
Antigüedad: 10 años, 5 meses
Puntos: 0
Crear tablas como historial

Buenos días.
La idea es crear una tabla con el movimiento de otra por ejemplo, en la tabla empleados cambio a un empleado de area (es el lugar de trabajo), y posteriormente quisiera saber a que area pertenecía anteriormente.
Tabla empleados
Id empleado
Nombres
Fecha
Area
Tabla historial empleado
Id empleado
Fecha de movimiento de area
area de la que viene

Estoy haciendo esto en php pero y como base mysql espero me puedan ayudar con ejemplo (en código) para poderme ayudar, gracias de antemano
  #2 (permalink)  
Antiguo 01/07/2011, 06:47
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 8 años, 1 mes
Puntos: 331
Respuesta: Crear tablas como historial

Hay un par de alternativas, puedes hacerlo con PHP o puedes utilizar un procedimiento almacenado. Creo que esta la mejor opción pero me parece que todavía necesitas un poco de estudio. Si quieres saber sobre store procedures: http://www.forosdelweb.com/f86/aport...-mysql-866036/.
Si lo quieres implementar en php necesitas una función. Cada Update/Insert que se haga ha de pasar por esta función. La función hace una select de los valores actuales, los guarda en la tabla de registro y luego hace el update/insert.
Piensa que este procedimiento duplica la cantidad de peticiones a la DB con lo que tienes que pensar muy bien lo que quieres registrar.
Cuando tengas algo hecho lo posteas y seguimos desde ahi, salu2!
__________________
Fere libenter homines, id quod volunt, credunt.

Etiquetas: historial, tablas
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 16:08.