Saltar al contenido

MYSQL: ¿Cómo copiar una fila completa de una tabla a otra en mysql con la segunda tabla con una columna adicional?

Si encuentras algún detalle que no comprendes nos puedes dejar un comentario y te ayudaremos tan rápido como podamos.

Solución:

Para refinar la respuesta de Zed y responder a su comentario:

INSERT INTO dues_storage
SELECT d.*, CURRENT_DATE()
FROM dues d
WHERE id = 5;

Ver el comentario de TJ Crowder

La forma más segura de hacerlo es especificar completamente las columnas tanto para la inserción como para la extracción. No hay garantía (para la aplicación) de que cualquiera de estos sea el orden que usted cree que puede ser.

insert into dues_storage (f1, f2, f3, cd)
    select f1, f2, f3, current_date() from dues where id = 5;

Si le preocupa tener que cambiar muchas páginas PHP múltiples que hacen esto (como parece indicar en el comentario a otra respuesta), esto está listo para un procedimiento almacenado. De esa manera, todas sus páginas PHP simplemente llaman al procedimiento almacenado con (por ejemplo) solo la ID para copiar y controla el proceso de copia real. De esa manera, solo hay un lugar donde necesita mantener el código y, en mi opinión, el DBMS es el lugar correcto para hacerlo.

INSERT INTO dues_storage
SELECT field1, field2, ..., fieldN, CURRENT_DATE()
FROM dues
WHERE id = 5;

Puedes patrocinar nuestra labor exponiendo un comentario y dejando una puntuación te damos la bienvenida.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *