¿Existe una manera fácil de copiar registros principales y todos los registros secundarios relacionados usando estrictamente SQL sin usar cursores o scripts/código externos? He aquí un ejemplo de lo que tengo:Copiando el padre de MySQL y todos los registros secundarios relacionados en la base de datos a un nuevo ID
categories
==
category_id
category_name
parent_table
==
parent_record_id
category_id
... <other fields>
child_table1
==
child_table1_id
parent_record_id
... <other fields>
child_table2
==
child_table2_id
parent_record_id
... <other fields>
Básicamente, lo que necesita para hacer un duplicado exacto de todos estos datos. Los únicos campos que cambiarán son los ID, ya que todos son auto_increment. En función del esquema anterior, cuando copie los registros en la tabla de categorías, terminaré con todos los nuevos valores de category_id. Cuando creo duplicados de los registros parent_table necesitaré una manera de actualizar de alguna manera los valores de category_id antiguos con los nuevos valores de category_id que acabo de crear. Luego, necesitaré usar los nuevos valores parent_record_id al copiar los registros child_record1 y child_record2.
Siento que debe haber una manera más fácil de lograr esto en lugar de escribir todo de forma externa en PHP u otro idioma. ¿Esta ahí?
Gracias Bryan. Soy consciente de esa sintaxis. Eso no resuelve el problema que tengo con la copia de otros registros relacionados y el seguimiento/actualización de todos los nuevos ID. – ShawnCBerg