Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/06/2008, 04:37
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Replicar registro en la misma tabla

Carxl y Quim,

A mí, que lo he probado, me da problema con el id (pues lo duplicas en la misma tabla). Creo que eso habría que eliminarlo, y dejarlo algo así.
INSERT INTO prueba (prueba, fecha)
SELECT prueba, fecha
FROM prueba WHERE prueba.id_prueba = 1;
La opción de Quim con programación es muy útil y es la que yo utilizaría.
No sé si se podría con un STORED PROCEDURE que al llamar al llamarlo e introducir el dato del id_prueba y el número de veces, se lo inserte en la tabla tantas veces como indique el número de veces. Imagino que recogiendo como entradas esos dos datos numéricos en el procedimiento y haciendo esta consulta de actualización con una iteración de esa consulta que se repita el número de veces requerido, él sólo tendría que llamar al procedimiento y ofrecerle ambos datos, el id_prueba, y el número de veces. No sé si es eso, pero si es eso, esa sintaxis, creo, le valdrá. Yo no trabajo con procedimientos (tal vez también con una function), pero seguro que alguien del foro puede echarle una mano. Lo que está claro es que tendrá que poner los nombres de todos los campos de la tabla menos del id. Pero si en su trabajo repite, duplica los datos con frecuencia y necesita hacerlo un número de veces, un stored procedure, si consigue montarlo, será una solución más cómoda. Se me ocurre... Y también dependerá de la versión de MySQL que utilices.